@charset "UTF-8";

/* CSS Document */

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

@font-face {
    font-family: "Noto Sans Japanese";
    font-style: normal;
    font-weight: 100;
    src: local("NotoSansJP-Regular.otf"),
        url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff2) format("woff2"),
        url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff) format("woff"),
        url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.otf) format("opentype");
}

* {
    transition: all 0.5s;
}

body {
    margin: 0;
    padding: 0;
    font-size: 13.7957px;
    font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
    font-weight: 400;
    background: #f7f7f7;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
    color: #333;
    box-sizing: border-box;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

body,
html {
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: visible;
}

div,
p,
img,
iframe {
    padding: 0;
    margin: 0;
    border: 0;
}

h1,
h2,
h3,
h4,
h5 {
    padding: 0;
    margin: 0;
}

h1 {
    font-size: 60px;
    line-height: 70px;
}

h2 {
    font-size: 36px;
    line-height: 48px;
}

h3 {
    font-size: 22px;
    line-height: 30px;
}

h4 {
    font-size: 18px;
    line-height: 26px;
}

h5 {
    font-size: 18px;
    line-height: 26px;
}

@media screen and (max-width: 640px) {
    h2 {
        font-size: 30px;
    }
}

a {
    text-decoration: underline;
    color: #689bd2;
}

a:hover {
    text-decoration: none;
}

img {
    line-height: 0;
    padding: 0;
    margin: 0;
    border: 0;
}

span {
    display: inline-block;
}

.clearfix:after {
    content: ".";
    /* 新しい要素を作る */
    display: block;
    /* ブロックレベル要素に */
    clear: both;
    height: 0;
    visibility: hidden;
}

.clearfix {
    min-height: 1px;
}

* html .clearfix {
    height: 1px;
    /*\*/
    /*/
	height: auto;
	overflow: hidden;
	/**/
}

.a {
    display: block;
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 100%;
}

.caption {
    font-size: 10px;
}

.caption_wrap {
    padding-top: 20px;
    padding-bottom: 20px;
}

.caption_wrap .text .caption {
    line-height: 18px;
}

ul,
li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.text {
    font-size: 100%;
    line-height: 1.8em;
    text-align: justify;
    text-justify: inter-ideograph;
}

.touch .text {
    line-height: 1.5em;
}

.tc {
    text-align: center;
}

.tl {
    text-align: left;
}

.tr {
    text-align: right;
}

.mt0 {
    margin-top: 0px !important;
}

.mt10 {
    margin-top: 10px;
}

.mt20 {
    margin-top: 20px;
}

.mt40 {
    margin-top: 40px;
}

.mt60 {
    margin-top: 60px;
}

.mt80 {
    margin-top: 80px;
}

.mb0 {
    margin-bottom: 0px !important;
}

.mb10 {
    margin-bottom: 10px;
}

.mb20 {
    margin-bottom: 20px;
}

.mb40 {
    margin-bottom: 40px;
}

.mb50 {
    margin-bottom: 50px;
}

.mb60 {
    margin-bottom: 60px;
}

.mb80 {
    margin-bottom: 80px;
}

.pt0 {
    padding-top: 0 !important;
}

.pb0 {
    padding-bottom: 0 !important;
}

.pt10 {
    padding-top: 10px !important;
}

.pb10 {
    padding-bottom: 10px !important;
}

.pt20 {
    padding-top: 20px !important;
}

.pb20 {
    padding-bottom: 20px !important;
}

.text_indent {
    text-indent: 1em;
}

.center {
    text-align: center;
}

.mini {
    font-size: 81%;
    position: relative;
    top: -1px;
}

span {
    display: inline-block;
}

.effect:hover * {
    opacity: 0.6;
    filter: alpha(opacity=60);
}

.container {
    width: calc(100% - 40px);
    box-sizing: border-box;
    margin: 0 auto;
    position: relative;
}

.box_wrap,
.box_wrap_slendar,
.box_wrap_minimum {
    position: relative;
    margin: 0 auto;
    width: calc(100% - 40px);
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 1024px;
}

.box_wrap_minimum {
    max-width: 640px;
}

.box_wrap_slendar {
    max-width: 740px;
}

.box_wrap2 {
    width: calc(100% - 40px);
    /*width:calc( 100% - 10px );*/
    max-width: 1054px;
}

.section {
    position: relative;
    width: 100%;
    overflow: visible;
    box-sizing: border-box;
}

.section.min_height_wh {
    min-height: calc(100vh - 260px);
}

.section_cont {
    padding-top: 50px;
    padding-bottom: 50px;
}

@media screen and (min-width: 768px) {
    .box_wrap,
    .box_wrap_slendar,
    .container {
        width: calc(100% - 80px);
    }

    .box_wrap2 {
        width: calc(100% - 50px);
    }
}

@media screen and (min-width: 961px) {
    .section.min_height_wh {
        min-height: calc(100vh - 304px);
    }
}

.green {
    color: #006835;
}

.red {
    color: #cb0000;
}

hr {
    border: 0;
    border-top: 1px solid #333;
    margin: 20px auto;
}

/*table*/

table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

table th,
table td {
    text-align: left;
    padding: 5px 0;
}

table tbody {
    vertical-align: middle;
}

table tr.as_block th,
table tr.as_block td {
    display: block !important;
    width: 100% !important;
}

table tr.as_block td {
    padding-left: 20px;
}

@media screen and (max-width: 640px) {
    table.suitable thead {
        display: none;
    }

    table.suitable th,
    table.suitable td {
        display: block;
    }

    table.suitable th:before,
    table.suitable td:before {
        color: #006835;
        text-align: left;
        font-weight: bold;
        display: block;
        content: attr(data-title);
    }
}

.parts {
    position: absolute;
    zoom: 1;
}

.parts img {
    zoom: 1;
}

.radius {
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    -khtml-border-radius: 3px;
    border-radius: 3px;
}

.icon {
    width: 100%;
    height: 100%;
    display: inline-block;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    overflow: hidden;
    position: relative;
}

.icon .txt {
    top: 100%;
    left: 100%;
    bottom: auto;
    right: auto;
    font-size: 0;
}

.bg {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 100%;
}

.fixed_center {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.btns {
    letter-spacing: -0.4em;
}

.btns .btn {
    letter-spacing: normal;
    display: inline-block;
    vertical-align: top;
}

.fit_image,
.img {
    line-height: 0;
}

.fit_image img {
    width: 100%;
}

@media screen and (min-width: 641px) {
    .section_mv .fit_image img.portrait,
    .section_mv .fit_image img.overHigh {
        height: 37vw;
        width: auto !important;
    }
}

.fit_image50 {
    line-height: 0;
    margin-bottom: 50px;
}

.fit_image50 img {
    width: 50%;
    display: inline-block;
}

@media screen and (max-width: 640px) {
    .fit_image50 {
        margin-bottom: 25px;
    }
}

.animate {
    opacity: 0;
    filter: Alpha(opacity=0);
}

.animate.active {
    opacity: 1;
    filter: Alpha(opacity=100);
}

.photo {
    position: relative;
}

.photo .photo_caption {
    margin-top: 5px;
    text-align: right;
}

.photo .photo_caption_fixed {
    position: absolute;
    bottom: 5px;
    right: 5px;
    color: #fff;
    text-shadow: 1px 1px 1px #000;
}

.photo.portrait {
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
}

.mincho {
    font-family: "Century", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro",
    "HGS明朝B", "ＭＳ Ｐ明朝", "メイリオ", Meiryo, serif;
    transform: rotate(0.001deg);
    font-weight: 100;
}

.gothic {
    font-family: "TB新聞ゴシック M", "TBNPGothic M";
}

.ie .gothic {
    transform: rotate(0.001deg);
}

.b {
    font-weight: 600;
}

.eng {
    font-family: "SignPainter", "Times New Roman", Times, "serif";
    transform: rotate(0.001deg);
    font-weight: 100;
}

.underline {
    text-decoration: underline;
}

.vertical {
    -ms-writing-mode: tb-rl;
    /* for MS IE8+ */
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

/*block*/

.block {
    margin-bottom: 80px;
}

.block .head {
    margin-bottom: 20px;
}

.box_grey {
    background: #f1f1f1;
    padding: 20px;
    line-height: 1.8em;
}

.box_white {
    background: #fff;
    padding: 20px;
    line-height: 1.8em;
}

.box_black {
    background: #333;
    padding: 20px;
    color: #fff;
    line-height: 1.8em;
}

.box_alert {
    padding: 19px;
    border: 1px solid #cb0000;
    box-sizing: border-box;
    margin: 20px auto;
    background: #fff;
    line-height: 1.8em;
}

.touch .box_grey,
.touch .box_white,
.touch .box_black,
.touch .box_alert {
    line-height: 1.5em;
}

.section_inner_wrap {
    padding: 40px 20px;
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    background: #fff;
}

@media screen and (min-width: 768px) {
    .section_inner_wrap {
        padding: 40px 40px;
    }
}

/*device用*/

.not_for_device,
.not_for_sp,
.for_pc {
    display: none !important;
}

.for_device,
.for_sp,
.not_for_pc {
    display: block !important;
}

.for_device.inline,
.for_sp.inline,
.not_for_pc.inline {
    display: inline-block !important;
}

@media screen and (min-width: 641px) {
    .not_for_sp {
        display: block !important;
    }

    .not_for_sp.inline {
        display: inline-block !important;
    }

    .for_sp {
        display: none !important;
    }
}

@media screen and (min-width: 769px) {
    .not_for_device {
        display: block !important;
    }

    .not_for_device.inline {
        display: inline-block !important;
    }

    .for_device,
    .for_device.inline {
        display: none !important;
    }
}

@media screen and (min-width: 961px) {
    .not_for_pc,
    .not_for_pc.inline {
        display: none !important;
    }

    .for_pc {
        display: block !important;
    }

    .for_pc.inline {
        display: inline-block !important;
    }
}

/*list_wrap*/

.list_wrap .list {
    padding: 12px 0;
    border-bottom: 1px dotted #ddd;
    letter-spacing: -0.4em;
}

.list_wrap .list .label,
.list_wrap .list .cont {
    letter-spacing: normal;
    display: inline-block;
    vertical-align: top;
}

.list_wrap .list .label {
    width: 100%;
    padding-bottom: 10px;
    color: #006835;
}

.list_wrap .list .cont {
    width: 100%;
}

.list_num .list,
.list_alphabet .list,
.list_alphabet_caps .list,
.list_dot .list,
.list_kana .list {
    border-bottom: 0;
    letter-spacing: normal !important;
    padding-left: 10px;
    box-sizing: border-box;
    width: calc(100% - 20px);
    margin-left: 20px;
    box-sizing: border-box;
}

.list_num > .list {
    list-style: decimal;
}

.list_alphabet > .list {
    list-style: lower-alpha;
}

.list_alphabet_caps > .list {
    list-style: upper-alpha;
}

.list_dot > .list {
    list-style: disc;
}

.list_kana > .list {
    text-indent: -1.2em;
}

@media screen and (min-width: 641px) {
    .list_wrap .list {
        letter-spacing: -0.4em;
    }

    .list_wrap .list .label,
    .list_wrap .list .cont {
        letter-spacing: normal;
        display: inline-block;
        vertical-align: top;
    }

    .list_wrap .list .label {
        width: 180px;
        padding-bottom: 0;
    }

    .list_wrap .list .cont {
        width: calc(100% - 250px);
    }
}

.news_archive_list_wrap .list {
    box-sizing: border-box;
    padding: 10px;
    background: #fff;
    border-bottom: 0;
    margin-bottom: 5px;
}

.news_archive_list_wrap .list .label {
    position: relative;
    width: 100%;
}

.news_archive_list_wrap .list .category {
    position: absolute;
    right: 0;
    top: 0;
}

.news_archive_list_wrap .list .label .date {
    height: 20px;
    line-height: 20px;
    color: #333;
}

@media screen and (min-width: 641px) {
    .news_archive_list_wrap .list .label {
        display: inline-block;
        float: left;
        width: auto;
        padding-right: 20px;
    }

    .news_archive_list_wrap .list .category {
        position: static;
        display: inline-block;
        vertical-align: middle;
        margin-left: 20px;
    }

    .news_archive_list_wrap .list .label .date {
        line-height: 25px;
        margin: -2px 0 0 20px;
        display: inline-block;
        vertical-align: middle;
    }

    .news_archive_list_wrap .list .cont {
        line-height: 25px;
        display: inline-block;
    }
}

/*.category*/

.category {
    min-width: 105px;
    display: inline-block;
    width: auto;
    height: 25px;
    background: #999;
}

.category .a {
    box-sizing: border-box;
    display: inline-block;
    position: relative;
    text-align: center;
    font-size: 12px;
    line-height: 25px;
    color: #fff;
    padding: 0 10px;
}

/*status*/

.statuses .status {
    width: 50px;
    height: 50px;
    margin: 0 5px;
}

.statuses .status .a {
    background: #950000;
    border-radius: 2px;
    position: relative;
}

.statuses .status .a:after {
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    content: " ";
    box-sizing: border-box;
    border: 1px solid rgba(255, 255, 255, 0.33);
}

.statuses .status .a .icon {
    width: 40px;
    height: 40px;
}

.statuses .status_area .a {
    background: #689bd2;
}

.statuses .status_application .a {
    background: #673e50;
}

.statuses .status_order .a .icon {
    background-image: url(/images/front/common/icon_event_faster.png);
}

.statuses .status_order[rel="lottery"] .a .icon {
    background-image: url(/images/front/common/icon_event_lottery.png);
}

.statuses .status_area .a .icon {
    background-image: url(/images/front/common/icon_event_kansai.png);
}

.statuses .status_area[rel="capital"] .a .icon {
    background-image: url(/images/front/common/icon_event_capital.png);
}

.statuses .status_application .a .icon {
    background-image: url(/images/front/common/icon_event_pre.png);
}

.statuses .status_application[rel="now"] .a .icon {
    background-image: url(/images/front/common/icon_event_now.png);
}

.statuses .status_application[rel="finish"] .a .icon {
    background-image: url(/images/front/common/icon_event_finish.png);
}

.statuses .status_application[rel="end"] .a .icon {
    background-image: url(/images/front/common/icon_event_end.png);
}

.statuses .status_application[rel="cancel"] .a .icon {
    background-image: url(/images/front/common/icon_event_cancel.png);
}

/*column*/

.column2,
.column3,
.column4,
.column5,
.column6 {
    letter-spacing: -0.4em;
    vertical-align: top;
    margin: 0 auto;
}

.column {
    margin-bottom: 40px;
    letter-spacing: normal;
    display: inline-block;
    width: 100%;
    vertical-align: top;
}

.column4 .column,
.column5 .column,
.column6 .column {
    width: calc(50% - 20px);
    margin-right: 40px;
}

.column4 .column:nth-child(2n),
.column5 .column:nth-child(2n),
.column6 .column:nth-child(2n) {
    margin-right: 0;
}

@media screen and (min-width: 521px) {
    .column3 .column {
        width: calc(50% - 30px);
        margin-right: 60px;
    }

    .column3 .column:nth-child(2n) {
        margin-right: 0;
    }
}

@media screen and (min-width: 641px) {
    .column2 .column {
        width: calc(50% - 30px);
        margin-right: 60px;
    }

    .column2 .column:nth-child(2n) {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px) {
    .column3 .column,
    .column5 .column,
    .column6 .column {
        width: calc(33% - 30px);
        width: calc((100% / 3) - 30px);
        margin-right: 45px;
    }

    .column3 .column:nth-child(2n),
    .column5 .column:nth-child(2n),
    .column6 .column:nth-child(2n) {
        margin-right: 45px;
    }

    .column3 .column:nth-child(3n),
    .column5 .column:nth-child(3n),
    .column6 .column:nth-child(3n) {
        margin-right: 0;
    }
}

@media screen and (min-width: 961px) {
    .column4 .column {
        width: calc(25% - 30px);
        margin-right: 40px;
    }

    .column5 .column {
        width: calc(20% - 20px);
        margin-right: 25px;
    }

    .column6 .column {
        width: calc((100% / 6) - 20px);
        margin-right: 24px;
    }

    .column4 .column:nth-child(2n) {
        margin-right: 40px;
    }

    .column5 .column:nth-child(2n) {
        margin-right: 25px;
    }

    .column5 .column:nth-child(3n) {
        margin-right: 25px;
    }

    .column6 .column:nth-child(3n) {
        margin-right: 24px;
    }

    .column4 .column:nth-child(4n),
    .column5 .column:nth-child(5n),
    .column6 .column:nth-child(6n) {
        margin-right: 0;
    }
}

/*archives・article*/

.archive_list,
.article_wrap {
    max-width: 1104px;
    margin: 0 auto;
}

.archive_list .archive,
.article_wrap {
    background: #fff;
    box-sizing: border-box;
    padding: 40px 20px 20px 20px;
    position: relative;
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    margin-bottom: 50px;
}

.archive_list .archive .title,
.article .title {
    padding: 20px 0 20px 0;
    margin: 20px auto 20px auto;
    font-weight: bold;
    border-top: 1px solid #333;
}

.article .title_nophoto {
    padding: 0 0 10px 0;
    margin: 0 auto 10px auto;
    font-weight: bold;
}

.archive_list .archive.no_photo .title {
    border-bottom: 1px solid #333;
}

.archive_list .archive .title {
    font-size: 22px;
    line-height: 28px;
}

.article .body .title {
    border-top: 0;
    margin-bottom: 0;
}

.article .body .text {
    font-size: 108%;
}

.archive_list .archive .date {
    margin-top: 20px;
}

.article .date {
    margin-top: 20px;
    height: 52px;
}

.archive_list .archive .date .limit,
.article .date .limit {
    margin-top: 10px;
}

.archive_list .archive .head .category.fixed_center {
    left: auto;
    bottom: auto;
}

.article .to_link_return {
    right: 20px;
    left: auto;
    margin: 0;
    top: 30px;
}

.archive_list .archive .body,
.article .body {
    padding-top: 20px;
}

.archive_list .archive .statuses {
    text-align: right;
    margin-bottom: 10px;
}

.archive_list .archive .statuses .status:last-child {
    marign-right: 0;
}

.article .statuses {
    text-align: left;
    margin-bottom: 10px;
}

.article .statuses .status:first-child {
    margin-left: 0;
}

.archive_list .archive .to_link {
    margin-bottom: 0;
    margin-top: 20px;
}

.archives .column {
    margin: 0 15px 45px 15px !important;
}

.archives.column2 .column,
.archives.column3 .column {
    width: calc(100% - 30px);
}

.archives.column4 .column {
    width: calc(50% - 30px);
}

.archives .column > .a {
    overflow: visible;
    text-decoration: none;
    color: #333;
}

.archives .column .photo,
.archive_list .archive .photo {
    /*box-shadow:4px 4px 0px 0px rgba(0,0,0,0.1);*/
    /*box-shadow:0px 0px 0px 0px rgba(0,0,0,0);*/
    text-align: center;
}

body .archives .column a .photo .img,
body .archive_list .archive a .photo .img {
    position: relative;
    display: inline-block;
}

body:not(.touch) .archives .column a:hover .photo .img,
body:not(.touch) .archive_list .archive a:hover .photo .img,
body:not(.touch) .banner a:hover .img,
body:not(.touch) .banner1 a:hover .img,
body:not(.touch) .banner2 a:hover .img {
    opacity: 0.6;
    filter: alpha(opacity=60);
    -ms-filter: "alpha(opacity=60)";
}

/*body:not(.touch) .archives .column a .photo .img:after,
body:not(.touch) .archive_list .archive a .photo .img:after,
body:not(.touch) .banner a .img:after,
body:not(.touch) .banner1 a .img:after,
body:not(.touch) .banner2 a .img:after{
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	width:100%;
	height:100%;
	margin:auto;
	box-sizing: border-box;
	border:2px solid #FFF;
	content:" ";
	opacity:0;
	filter:Alpha(opacity=0);
}

body:not(.touch) .archives .column a:hover .photo .img:after,
body:not(.touch) .archive_list .archive a:hover .photo .img:after,
body:not(.touch) .banner a:hover .img:after,
body:not(.touch) .banner1 a:hover .img:after,
body:not(.touch) .banner2 a:hover .img:after{
	border-width:2px;
	opacity:1;
	filter:Alpha(opacity=100);
}*/

.archives.column2 .column .a .photo .img img.portrait,
.archives.column3 .column .a .photo .img img.portrait {
    height: calc((100vw - 40px) / 4 * 3);
    width: auto;
}

.archives.column4 .column .a .photo .img img.portrait {
    height: calc(((50vw - 5px) - 30px) / 4 * 3);
    width: auto;
}

.archives .column .info {
    padding-top: 15px;
}

.archives .column .info .name {
    margin-top: 10px;
    font-weight: bold;
}

.archives.column2 .column .info .name {
    font-size: 18px;
}

.archives .column.new .info .name:after,
.archive_list .archive.new .date:before,
.article.new .date:before {
    content: "NEW";
    font-style: italic;
    width: 40px;
    text-align: center;
    display: inline-block;
    box-sizing: border-box;
    border: 1px solid #a5090e;
    color: #fff;
    line-height: 18px;
    height: 20px;
    color: #a5090e;
    font-size: 12px;
    margin-right: 10px;
    position: relative;
}

.archives .column.new .info .name:after {
    margin-left: 10px;
    margin-right: 0;
}

.article > .photo .caption,
.article > .photo_wrap .photo .caption,
.article .sub_block > .photo .caption,
.article .sub_block > .photo_wrap .photo .caption {
    height: 30px;
    text-align: left;
    background: #333;
    color: #fff;
    box-sizing: border-box;
    padding: 0 20px;
    line-height: 30px;
    font-size: 12px;
}

.photo_wrap {
    text-align: center;
}

.photo_wrap > .photo {
    width: auto;
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
}

.ie .photo_wrap > .photo {
    display: block;
    margin: 0;
    text-align: left;
}

.ie .article > .photo .caption,
.ie .article > .photo_wrap .photo .caption,
.ie .article .sub_block > .photo .caption,
.ie .article .sub_block > .photo_wrap .photo .caption {
    background: none;
    padding: 0;
    color: #333;
    text-align: left;
}

.photo_wrap > .photo > .img {
    margin: 0 auto;
    text-align: center;
}

.ie .article .photo_wrap > .photo > .img {
    text-align: left;
}

.photo_wrap > .photo > .img img {
    max-width: 100%;
    width: auto;
}

.archive_list .archive .photo_wrap > .photo .img img {
    max-height: 400px;
}

.article .photo_wrap > .photo .img img {
    max-height: 500px;
}

@media screen and (max-width: 640px) {
    .article .to_link_return {
        display: none;
    }

    .archive_list .archive .photo_wrap > .photo .img img,
    .article .photo_wrap > .photo .img img {
        max-height: 300px;
    }
}

@media screen and (min-width: 641px) {
    .archives.column3 .column {
        width: calc(33% - 72px);
        /*width:calc( 33% - 30px );*/
        width: calc((100% / 3) - 72px);
        /*width:calc( ( 100% / 3 ) - 30px );*/
        padding: 0 0 0 30px;
        border-left: 1px solid #dadada;
    }

    .archives.column3 .column:last-child {
        padding: 0 30px 0 30px;
        border-right: 1px solid #dadada;
    }

    .archives.column4 .column {
        width: calc(25% - 63px);
        /*width:calc( 25% - 30px );*/
        padding: 0 0 0 25px;
        border-left: 1px solid #dadada;
    }

    .archives.column4 .column:last-child {
        padding: 0 25px 0 25px;
        border-right: 1px solid #dadada;
    }

    .archives.column2 .column .a .photo .img img.portrait {
        height: calc((((100vw - 10px) / 2) - 30px) / 4 * 3);
        max-height: 373px;
    }

    .archives.column3 .column .a .photo .img img.portrait {
        height: calc((((100vw - 10px) / 3) - 30px) / 4 * 3);
        max-height: 241px;
    }

    .archives.column4 .column .a .photo .img img.portrait {
        height: calc((((100vw - 10px) / 4) - 30px) / 4 * 3);
        max-height: 175px;
    }
}

@media screen and (min-width: 768px) {
    .archive_list .archive {
        padding: 40px;
        /*padding-left:calc( 50% + 40px );*/
        position: relative;
        /*min-height:calc( ( 50vw - 40px ) * 3 / 4 + 80px );*/
    }

    .archive_list .archive:not(.no_photo) {
        letter-spacing: -0.4em;
    }

    .article_wrap {
        padding: 40px;
    }

    .article .to_link_return {
        right: 40px;
        height: 40px;
    }

    .archive_list .archive:not(.no_photo) > .photo,
    .archive_list .archive:not(.no_photo) > .photo_wrap,
    .archive_list .archive:not(.no_photo) > .inner {
        letter-spacing: normal;
        vertical-align: top;
        display: inline-block !important;
    }

    .archive_list .archive:not(.no_photo) > .photo,
    .archive_list .archive:not(.no_photo) > .photo_wrap {
        width: calc(50% - 40px);
        margin-right: 40px;
    }

    .archive_list .archive:not(.no_photo) > .inner {
        width: 50%;
    }

    /*.archive_list .archive .photo{
	position:absolute;
	width:calc( 50% - 40px );
	max-width:500px;
	top:40px;
	left:40px;
	}*/
    .archive_list .archive .head {
        margin-bottom: 0;
    }

    .archive_list .archive .body {
        padding-top: 10px;
    }

    .archive_list .archive .title {
        border-bottom: 1px solid #333;
    }

    .archives.column2 .column {
        width: calc(50% - 77px);
        padding: 0 0 0 30px;
        border-left: 1px solid #dadada;
    }

    .archives.column2 .column:last-child {
        padding: 0 30px 0 30px;
        border-right: 1px solid #dadada;
    }

    archives.column2 .column .info .name {
        font-size: 21px;
    }

    .archives.column2.top_cms_block .box_white {
        background: none;
    }
}

@media screen and (max-width: 960px) {
    .article .to_link_return {
        right: 74px;
        height: 40px;
    }

    .article .to_link_return .a {
        width: 160px;
        min-width: 160px;
    }
}

.banner {
    margin-bottom: 20px;
}

.estate_info .info {
    padding: 10px 0;
    line-height: 25px;
}

.estate_info .info .label {
    display: inline-block;
    height: 25px;
    line-height: 25px;
    width: 90px;
    text-align: center;
    background: #333;
    color: #fff;
    margin-right: 20px;
    font-size: 12px;
}

/*.pan*/

.pan {
    height: 30px;
    box-sizing: border-box;
    padding: 0 20px;
    line-height: 30px;
    font-size: 10px;
    letter-spacing: -0.4em;
    display: none !important;
}

.pan span {
    padding: 0 8px;
    position: relative;
    letter-spacing: normal;
}

.pan span.home {
    padding-left: 0;
}

.pan span:not(:last-child):after {
    width: 1px;
    height: 10px;
    top: 0;
    bottom: 0;
    right: 0;
    position: absolute;
    content: " ";
    background: #333;
    margin: auto;
}

.pan a {
    text-decoration: none;
    color: #333;
}

/*to_link*/

.to_link {
    margin-top: 40px;
    margin-bottom: 40px;
}

.to_link .a {
    background: #333333;
    color: #fff;
    height: 40px;
    padding: 0 20px;
    min-width: 180px;
    width: auto;
    display: inline-block;
    text-align: center;
    box-sizing: border-box;
    border-radius: 20px;
}

.to_link .a .arrow {
    width: 20px;
    height: 10px;
    background-image: url(/images/front/common/to_link_arrow.png);
    right: 20px;
    left: auto;
}

.to_link .a .txt {
    line-height: 40px;
    box-sizing: border-box;
    padding-right: 20px;
}

.to_link_more .a {
    background: #fff;
    width: calc(100% - 40px);
    height: 64px;
    border-radius: 32px;
    max-width: 1024px;
    overflow: visible;
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    cursor: pointer;
}

.to_link_more .a .txt {
    padding-right: 0;
    color: #333;
    line-height: 24px;
    padding-top: 16px;
    padding-bottom: 4px;
    position: relative;
    font-size: 14px;
}

.to_link_more .a .txt:after {
    content: " ";
    display: block;
    position: absolute;
    top: 100%;
    width: 0;
    height: 0;
    left: 0;
    right: 0;
    margin: auto;
    border: 5px solid transparent;
    border-top-color: #333;
}

.to_link .a:hover .txt,
.to_link .a:hover .arrow {
    opacity: 0.5;
    filter: Alpha(opacity=50);
}

.to_link_return .a .arrow {
    width: 18px;
    height: 18px;
    background-image: url(/images/front/common/to_link_arrow_return.png);
}

.loading {
    width: 60px;
    height: 60px;
    margin: 40px auto;
    position: relative;
}

.loading .icon {
    width: 60px;
    height: 60px;
    background-image: url(/images/front/common/loading.png);
    animation-name: rotation;
    animation-duration: 1s;
    animation-iteration-count: infinite;
}

@keyframes rotation {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}

.cont_name {
    text-align: center;
    padding-top: 20px;
    padding-bottom: 20px;
}

.cont_name .sub {
    margin-bottom: 20px;
}

.section_title_wrap {
    padding-top: 40px;
    padding-bottom: 40px;
}

#body_home_top .icon_title_wrap h2 {
    font-size: 20px !important;
    line-height: 30px;
}

@media screen and (max-width: 640px) {
    body:not(#body_home_top) .section_title_wrap {
        padding-top: 20px;
        /*padding-top:0;*/
    }
}

/*slideshow*/

.slideshow {
    width: 100%;
    height: 100%;
    overflow: hidden;
    overflow-y: visible;
}

.slideshow .slideshow_inner {
    width: 100%;
    height: 100%;
    position: relative;
    transition: none;
    overflow-y: visible;
}

.slideshow .slideshow_inner .cut {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    transition: none;
}

.slideshow .slideshow_inner .cut > .a {
    text-decoration: none;
}

.slideshow .slideshow_inner .cut .photo {
    width: 100%;
    height: auto;
}

@media screen and (min-width: 641px) {
    .slideshow .slideshow_inner .cut .photo {
        overflow: hidden;
    }
}

.slideshow .slideshow_inner .cut .bg,
.slideshow .slideshow_inner .cut .img {
    filter: grayscale(100%);
    opacity: 0.5;
    filter: Alpha(opacity=50);
}

.slideshow .slideshow_inner .cut.active .bg,
.slideshow .slideshow_inner .cut.active .img {
    filter: grayscale(0%);
    opacity: 1;
    filter: Alpha(opacity=100);
    text-align: center;
}

.section_mv .slideshow {
    width: 100%;
    overflow: hidden;
    margin: 0 auto;
    height: calc(100vw + 30px + 60px);
}

.section_mv .slideshow .slideshow_inner {
    margin: 0 auto;
    width: 100%;
    height: calc(100vw + 30px);
}

@media screen and (min-width: 641px) {
    .section_mv .slideshow {
        max-width: 1200px;
        max-height: 520px;
        height: calc(37vw + 30px + 60px);
        /*height:calc( 40vw + 30px + 60px );*/
    }

    .section_mv .slideshow .slideshow_inner {
        height: calc(37vw + 30px);
        /*height:calc( 40vw + 30px );*/
        max-height: 470px;
    }
}

.article .slideshow,
.cms_photo_gallery .slideshow {
    width: 100%;
    overflow: visible;
    height: calc((100vw - 40px) * 3 / 4 + 30px + 60px);
}

.article .slideshow .slideshow_inner,
.cms_photo_gallery .slideshow .slideshow_inner {
    overflow: visible;
}

.cms_photo_gallery .slideshow .cut,
.article .slideshow .cut {
    opacity: 0;
    filter: Alpha(opacity=0);
}

.cms_photo_gallery .slideshow .cut.active,
.article .slideshow .cut.active {
    opacity: 1;
    filter: Alpha(opacity=100);
    z-index: 5;
}

.cms_photo_gallery .slideshow .slideshow_inner,
.article .slideshow .slideshow_inner {
    width: 100%;
    height: calc((100vw - 40px) * 3 / 4 + 30px);
    overflow: visible;
}

.slideshow .slideshow_inner .caption_wrap {
    width: 100%;
    height: 30px;
    /*background:#333333;*/
    text-align: center;
    font-weight: 300;
    color: #333;
    /*color:#FFF;*/
    line-height: 30px;
    padding: 0 20px;
    box-sizing: border-box;
    display: block;
    overflow: visible;
}

.slideshow .slideshow_inner .caption_wrap .caption,
.slideshow .slideshow_inner .caption_wrap .text {
    line-height: 30px;
    text-align: right;
    /*text-align:left;*/
    opacity: 0;
    filter: Alpha(opacity=0);
    font-size: 10px;
}

.slideshow .slideshow_inner .cut.active .caption_wrap .caption,
.slideshow .slideshow_inner .caption_wrap .text {
    opacity: 1;
    filter: Alpha(opacity=100);
}

.slideshow .points {
    text-align: center;
    height: 20px;
    /*margin-top:20px;*/
}

.slideshow .points .point {
    width: 60px;
    height: 20px;
    margin: 0 5px;
    position: relative;
}

.slideshow .points .point span {
    box-sizing: border-box;
    width: 60px;
    height: 3px;
    background: #fff;
    border: 1px solid #999;
}

.slideshow .points .point.here span {
    background: #999;
}

#wrapper {
    height: 100%;
    overflow: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    position: relative;
}

/************************************
** head + nav
************************************/

/*head*/

#head {
    background: #fff;
    height: 60px;
    /*height:80px;*/
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    width: 100%;
}

#head .logo {
    width: 200px;
    /*width:180px;*/
    height: 58px;
    /*height:60px;*/
    left: 15px;
    /*left:20px;*/
    right: auto;
}

#head .logo .icon {
    background-image: url(/images/front/common/logo.png);
}

#head #btn_head {
    left: auto;
    width: auto;
}

#head #btn_head span {
    display: block;
}

#head #btn_head .btn:not([rel="menu"]) {
    width: 100px;
    height: 100%;
    box-sizing: border-box;
    /*padding:12px 0;*/
}

#head #btn_head .btn:not([rel="menu"]) .a {
    width: 100%;
    background: #aaa;
    border-left: 1px solid #d0d0d0;
    border-right: 1px solid #717171;
    text-align: center;
}

#head #btn_head .btn:not([rel="menu"]) .a .txt {
    color: #fff;
    margin: 33px auto 0;
}

#head #btn_head .btn:not([rel="menu"]) .a .icon {
    width: 22px;
    height: 22px;
    margin: 12px auto 0;
}

#head #btn_head .btn[rel="login"] .a {
    background: #689bd2;
    border-left: 1px solid #a3c7e7;
    border-right: 1px solid #2a5ead;
}

#head #btn_head .btn[rel="contact"] .a {
    background: #301e04;
    border-left: 1px solid #6f540f;
    border-right: 1px solid #090400;
}

#head #btn_head .btn[rel="login"] .a .icon {
    background-image: url(/images/front/common/icon_lock_w.png);
}

#head #btn_head .btn[rel="registration"] .a {
    /*background:#bfac6b*/
    background: #bd7d17;
    border-left: 1px solid #dcb346;
    border-right: 1px solid #8c3d02;
}

#head #btn_head .btn[rel="chenge_property"] .a {
    background: #c20003;
    border-left: 1px solid #de000c;
    border-right: 1px solid #940000;
}

#head #btn_head .btn[rel="member"] .a {
    background: #bd7d17;
    border-left: 1px solid #dcb346;
    border-right: 1px solid #8c3d02;
}

#head #btn_head .btn[rel="registration"] .a .icon {
    background-image: url(/images/front/common/icon_registration_w.png);
    width: 24px;
    height: 24px;
}

#head #btn_head .btn[rel="chenge_property"] .a .icon {
    background-image: url(/images/front/common/icon_edit_w.png);
}

#head #btn_head .btn[rel="member"] .a .icon {
    margin-top: 4px;
    height: 24px;
    width: 24px;
    background-image: url(/images/front/common/icon_header_personal_w.png);
}

#head #btn_head .btn[rel="member"] .a .txt {
    margin-top: 28px;
    line-height: 1em;
}

#head #btn_head .btn[rel="logout"] .a .icon {
    background-image: url(/images/front/common/icon_unlock_w.png);
}

#head #btn_head .btn[rel="contact"] .a .icon {
    background-image: url(/images/front/common/icon_contact_w.png);
}

#head #btn_head .btn[rel="menu"],
#head #btn_head .btn[rel="faq"] {
    width: 60px;
    height: 100%;
    cursor: pointer;
    border-left: 1px solid #f1f1f1;
}

#head #btn_head .btn[rel="faq"] a {
    background: none !important;
    border: none !important;
}

#head #btn_head .btn[rel="menu"] .icon {
    width: 50px;
    height: 50px;
    background-image: url(/images/front/common/icon_menu.png);
}

#head #btn_head .btn[rel="faq"] .icon {
    width: 50px !important;
    height: 50px !important;
    margin: auto !important;
    background-image: url(/images/front/common/icon_faq.png);
}

.navi_on #head #btn_head .btn[rel="menu"] .icon {
    width: 50px;
    height: 50px;
    background-image: url(/images/front/common/icon_close2.png);
}

#head #btn_head .btn .a:hover .icon,
#head #btn_head .btn .a:hover .txt,
#btn_sitemap a:hover {
    opacity: 0.5;
    filter: Alpha(opacity=50);
}

#btn_sitemap {
    font-size: 12px;
    position: absolute;
    top: 8px;
    /*top:10px;*/
    right: 0;
    padding-left: 12px;
}

#btn_sitemap a {
    color: #333;
}

#btn_sitemap a:after {
    background: url(/images/front/common/navi_arrow_sub.png) no-repeat center center;
    display: block;
    background-size: contain;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0px;
    margin: auto;
    content: " ";
}

@media screen and (max-width: 1024px) {
    #head #btn_head .btn[rel="contact"] {
        display: none;
    }
}

/*
@media screen and (max-width:640px){
	#head #btn_head .btn[rel=contact]{
	display: none;
	}
	#head #btn_head .btn[rel=contact]{
	width:64px;
	height:100%;
	}

	#head #btn_head .btn[rel=contact] .a{
	border-radius:0;
	background:none;
	}

	#head #btn_head .btn[rel=contact]{
	width:110px;
	}

	#head #btn_head .btn[rel=contact] .a{
	background:none;
	}
	#head #btn_head .btn[rel=contact] .a .txt{
	display:none;
	padding-left:0;
	color:#333;
	}

	#head #btn_head .btn[rel=contact] .a .icon{
	background-image:url(/images/front/common/icon_contact.png);
	width:48px;
	height:48px;
	display:none;
	}
}
*/

@media screen and (min-width: 641px) {
    #head .logo {
        width: 236px;
        /*width:220px;*/
        height: 38px;
        /*height:60px;*/
    }
}

@media screen and (min-width: 961px) {
    #head {
        position: absolute;
        height: 65px;
        /*height:95px;*/
    }

    .scrollup:not(.ie) #head {
        position: fixed;
    }

    #head #btn_head {
        /* right:10px;*/
        /*top:26px;top:20px;*/
        /* height:34px; */
    }

    #head .hello_wrap {
        height: 100%;
        left: auto;
        right: 320px;
        width: 500px;
    }

    #head .hello_wrap.login.is_select_property {
        right: 420px;
    }

    #head .hello_wrap ul {
        display: none;
    }

    #head .hello_wrap.login ul {
        display: block;
        right: 0;
        left: auto;
        top: 35px;
        position: absolute;
    }

    #head .hello_wrap.login ul li {
        float: left;
        position: relative;
    }

    #head .hello_wrap.login ul li a {
        color: #333;
        font-size: 12px;
    }

    #head .hello_wrap.login ul li.show_login_property {
        margin-left: 30px;
        padding-left: 12px;
    }

    #head .hello_wrap.login ul li.show_login_property a:after {
        background: url(/images/front/common/navi_arrow_sub.png) no-repeat center center;
        display: block;
        background-size: contain;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        margin: auto;
        content: " ";
    }
}

@media screen and (max-width: 1024px) {
    #head .hello_wrap.login.for_pc.is_select_property {
        right: 320px;
    }
}

/*nav*/

nav {
    position: fixed;
    width: 100vw;
    height: 0;
    top: 40px;
    /*top:80px;*/
    right: 0;
    overflow: hidden;
    background: #fff;
    z-index: 90;
}

.navi_on nav {
    height: calc(100% - 40px);
}

nav .navi_wrap {
    overflow: hidden;
    overflow-y: auto;
    width: 100%;
    box-sizing: border-box;
    padding: 0 20px;
    height: 100%;
    border-top: 6px solid #f1f1f1;
}

nav .btns:not(.sub_navi) {
    margin: 15px auto 40px;
    /* margin:40px auto; */
}

nav .navi {
    margin-top: 34px;
}

nav .navi .btn .a {
    box-sizing: border-box;
    text-decoration: none;
}

nav .navi > .btn {
    border-top: 6px solid #f1f1f1;
}

nav .navi > .btn > .a {
    width: 100%;
    height: 48px;
    cursor: pointer;
    position: relative;
}

nav .navi > .btn[rel="mypage"] > .a {
    /*background:#333333;*/
}

nav .navi > .btn > .a .txt {
    line-height: 48px;
    font-size: 18px;
    width: calc(100% - 40px);
    color: #333;
}

nav .navi > .btn > div.a:after {
    background: url(/images/front/common/navi_arrow_down.png) no-repeat center center;
    display: block;
    background-size: contain;
    width: 24px;
    height: 24px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
    content: " ";
}

nav .navi > .btn.active > div.a:after {
    background-image: url(/images/front/common/navi_arrow_up.png);
}

nav .navi .sub_navi_wrap {
    height: 0;
    overflow: hidden;
}

nav .navi .btn.active .sub_navi_wrap {
    height: 144px;
}

nav .navi .btn[rel="event"].active .sub_navi_wrap {
    height: 151px;
}

nav .navi .btn[rel="enjoy"].active .sub_navi_wrap {
    height: 303px;
}

nav .navi .btn[rel="useful"].active .sub_navi_wrap {
    height: 303px;
}

nav .navi .btn[rel="information"].active .sub_navi_wrap {
    /* height:151px; */
    height: 201px;
}

nav .navi .btn[rel="mypage"].active .sub_navi_wrap {
    height: 201px;
}

nav .navi .btn[rel="contracter"].active .sub_navi_wrap {
    height: 252px;
}

nav .navi .sub_navi_btn {
    height: 48px;
}

nav .navi .sub_navi_btn .a .txt {
    width: calc(100% - 40px);
    box-sizing: border-box;
    padding-left: 20px;
    color: #333;
    line-height: 20px;
    height: 20px;
    font-size: 15px;
}

nav .navi .btn[rel="mypage"] .sub_navi_btn .a .txt:after {
    display: none;
}

nav .btns .btn {
    width: 100%;
    box-sizing: border-box;
}

nav .btns:not(.navi):not(.sub_navi) {
    border-top: 1px solid #535353;
}

nav .btns:not(.navi):not(.sub_navi) .btn {
    border: 1px solid #535353;
    border-top: 0;
}

nav .btns:not(.navi):not(.sub_navi) .btn .a {
    height: 40px;
    box-sizing: border-box;
    padding: 0 20px;
    text-decoration: none;
}

nav .btns:not(.navi):not(.sub_navi) .btn .a .txt {
    line-height: 40px;
    color: #333333;
    text-decoration: none;
}

nav .navi > .btn > .a:hover .txt,
nav .navi .btn .sub_navi_btn .a:hover .txt,
nav .navi .btn .sub_navi_btn .a:hover .icon {
    opacity: 0.6;
    filter: Alpha(opacity=60);
}

@media screen and (min-width: 961px) {
    nav {
        height: 65px;
        overflow: visible;
        position: absolute;
        transition: top 0s;
        top: 65px;
        /*top:95px;*/
    }

    .scrolled nav,
    .scrolldown nav {
        position: fixed;
        top: 0;
        box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    }

    .scrollup:not(.ie) nav {
        position: fixed;
        top: 65px;
        /*top:95px;*/
    }

    nav .navi_wrap {
        width: 100%;
        height: 100%;
        padding: 0;
        margin: 0;
        border-top: 0;
        overflow: visible;
    }

    nav .btns:not(.sub_navi) {
        margin: 0;
    }

    nav .btns .btn {
        border: 0;
    }

    nav .navi > .btn {
        height: 65px;
        box-sizing: border-box;
    }

    nav .navi > .btn5 {
        width: 20%;
    }

    nav .navi > .btn6 {
        width: 16.5%;
    }

    nav .navi > .btn6[rel="event"],
    nav .navi > .btn6[rel="contracter"] {
        width: 17%;
    }

    nav .navi > .btn:not(:first-child) {
        border-left: 2px solid #f1f1f1;
        /*border-left:1px solid #f1f1f1;*/
    }

    nav .navi > .btn > .a {
        height: 100%;
        border-top: 6px solid #f1f1f1;
        box-sizing: border-box;
    }

    /*
	nav .navi > .btn.active > .a{
	border-color:#689bd2;
	}
	*/
    nav .navi > .btn[rel="event"].active > .a {
        border-color: #c32a3d;
    }

    nav .navi > .btn[rel="enjoy"].active > .a {
        border-color: #b1509a;
    }

    nav .navi > .btn[rel="useful"].active > .a {
        border-color: #53948c;
    }

    nav .navi > .btn[rel="information"].active > .a {
        border-color: #e2a14b;
    }

    nav .navi > .btn[rel="mypage"].active > .a {
        border-color: #7e7e7e;
        /*border-color:#000000;*/
    }

    nav .navi > .btn[rel="contracter"].active > .a {
        border-color: #68b3d2;
    }

    nav .navi > .btn > div.a:after {
        right: 10px;
    }

    nav .navi > .btn > .a .txt {
        text-align: center;
        font-size: 16px;
        /*font-size:14px;*/
        width: calc(100% - 10px);
        height: 24px;
        line-height: 24px;
    }

    nav .navi > .btn.active > .a .txt {
        opacity: 0.5;
        filter: Alpha(opacity=50);
    }

    nav .navi .btn .sub_navi_wrap {
        background: rgba(255, 255, 255, 0.95);
        /*background:rgba(255,255,255,0.88);*/
        box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    }

    nav .navi .btn[rel="event"].active .sub_navi_wrap {
        height: 101px;
    }

    nav .navi .btn[rel="enjoy"].active .sub_navi_wrap {
        height: 101px;
    }

    nav .navi .btn[rel="useful"].active .sub_navi_wrap {
        height: 101px;
        /*height:336px;*/
    }

    nav .navi .btn[rel="information"].active .sub_navi_wrap {
        height: 101px;
    }

    nav .navi .btn[rel="mypage"].active .sub_navi_wrap {
        height: 101px;
    }

    nav .navi .btn[rel="contracter"].active .sub_navi_wrap {
        height: 101px;
    }

    nav .navi .btn .sub_navi_wrap .btns li {
        border-right: 1px solid #dddddd;
        margin: 20px 0;
    }

    nav .navi .btn .sub_navi_wrap .btns li:last-child {
        border-right: none;
    }

    nav .navi .btn[rel="useful"] .sub_navi_btn[rel="advice"] .a .txt,
    nav .navi .btn[rel="useful"] .sub_navi_btn[rel="procedure"] .a .txt,
    nav .navi .btn[rel="useful"] .sub_navi_btn[rel="concierge"] .a .txt {
        line-height: 24px;
        /*line-height:14px;*/
        height: 48px;
        /*height:28px;*/
    }

    nav .navi .btn .sub_navi_wrap {
        width: 100%;
        height: 0;
        position: absolute;
        top: 100%;
        left: 0;
    }

    nav .navi .btn:not([rel="mypage"]) .active .sub_navi_wrap {
        height: 56px;
    }

    nav .navi .btn[rel="mypage"] .active .sub_navi_wrap {
        height: 130px;
    }

    nav .navi .btn .sub_navi_wrap .btns {
        text-align: center;
        border-bottom: 5px solid #bd7d19;
    }

    nav .navi .btn .sub_navi_wrap .btn {
        width: calc(100% / 7);
        height: 56px;
        /*height:130px;*/
    }

    nav .navi .btn:not([rel="mypage"]) .sub_navi_wrap .btn {
        width: calc(100% / 7);
        height: 56px;
    }

    .ie nav .navi .sub_navi_wrap .btn {
        width: 14%;
    }

    /*
	.ie nav .navi .btn[rel=mypage] .sub_navi_wrap .btn{
	width:14%;
	}
	*/
    nav .navi .btn[rel="mypage"] .sub_navi_wrap .btn .a .icon {
        width: 60px;
        height: 60px;
        bottom: 30px;
        left: 0;
        right: 0;
    }

    nav .navi .btn[rel="mypage"] .sub_navi_wrap .btn:not(:last-child) .a:after {
        width: 1px;
        height: calc(100% - 50px);
        top: 0;
        bottom: 0;
        right: 0;
        margin: auto;
        position: absolute;
        content: " ";
        background: rgba(255, 255, 255, 0.33);
        display: block;
    }

    nav .navi .btn[rel="mypage"] .sub_navi_btn .a {
        /*background:rgba(51,51,51,0.88);*/
    }
}

@media screen and (min-width: 1365px) {
    nav .navi .btn[rel="useful"] .sub_navi_btn[rel="concierge"] .a .txt {
        line-height: 24px;
        height: 24px;
    }
}

@media screen and (min-width: 1700px) {
    nav .navi > .btn6[rel="event"] > div.a:after,
    nav .navi > .btn6[rel="contracter"] > div.a:after {
        right: 30px;
    }

    nav .navi > .btn > div.a:after {
        right: 70px;
    }

    nav .navi .btn:not([rel="mypage"]) .sub_navi_btn .a .txt {
        font-size: 16px;
    }
}

#sp_name_area {
    height: 20px;
    background: #3a3a3a;
    margin-top: 0;
}

#sp_name_area p {
    color: #fff;
    font-size: 12px;
    padding-left: 15px;
    line-height: normal;
    letter-spacing: normal;
}

/************************************
** contents
************************************/

#contents {
    position: relative;
    z-index: 1;
    padding-top: 60px;
}

@media screen and (min-width: 961px) {
    #contents {
        padding-top: 130px;
        /*padding-top:160px;*/
    }
}

.section_cont {
    padding-top: 40px;
    padding-bottom: 40px;
}

.icon_title_wrap {
    text-align: center;
}

.icon_title_wrap .sub_title {
    letter-spacing: 0.15em;
}

.icon_title_wrap .title .icon_title {
    width: 320px;
    height: 60px;
}

.icon_title_wrap .title .icon_title[rel="information"] {
    background-image: url(/images/front/common/title_information.png);
}

.icon_title_wrap .title .icon_title[rel="news"] {
    background-image: url(/images/front/common/title_news.png);
}

.icon_title_wrap .title .icon_title[rel="myhome"] {
    background-image: url(/images/front/common/title_myhome.png);
}

.icon_title_wrap .title .icon_title[rel="event"] {
    background-image: url(/images/front/common/title_event.png);
}

.icon_title_wrap .title .icon_title[rel="login"] {
    background-image: url(/images/front/common/title_login.png);
}

.icon_title_wrap .title .icon_title[rel="activate"] {
    background-image: url(/images/front/common/title_activate.png);
}

.icon_title_wrap h2 {
    font-size: 30px !important;
}

@media screen and (max-width: 640px) {
    .icon_title_wrap h2 {
        font-size: 20px !important;
        line-height: 30px;
    }
}

/************************************
** foot
************************************/

#foot {
    background: #fff;
    z-index: 5;
    border-top: 6px solid #f1f1f1;
    padding: 25px 0;
    box-sizing: border-box;
}

#foot .logo[rel="hankyu"] {
    width: 162px;
    height: 50px;
    margin: 0 auto;
}

#foot .logo .icon {
    background-image: url(/images/front/common/logo_hankyu.png);
}

#foot .copyright {
    font-size: 11px;
    margin-top: 20px;
}

@media screen and (max-width: 960px) {
    #foot {
        padding-bottom: 73px;
    }
}

@media screen and (min-width: 961px) {
    #foot .sitemaps {
        letter-spacing: -0.4em;
        max-width: 1281px;
        margin: 0 auto 25px auto;
    }

    #foot .sitemaps .icon_title_wrap {
        letter-spacing: 0;
        margin-bottom: 10px;
    }

    #foot .sitemaps .icon_title_wrap h2 {
        font-size: 20px !important;
        line-height: 30px;
    }

    #foot .sitemaps .sitemap {
        width: calc(20% - 12px);
        letter-spacing: normal;
        display: inline-block;
        vertical-align: top;
        text-align: left;
        box-sizing: border-box;
        padding-left: 19px;
        /* height:270px; */
        height: 300px;
        border-left: 1px solid #f1f1f1;
    }

    #foot .sitemaps .sitemap:not(:last-child) {
        width: calc(20% - 12px + 15px);
    }

    #foot .sitemaps .sitemap .btn {
        min-height: 20px;
        padding: 4px 0;
        line-height: 20px;
    }

    #foot .sitemaps .sitemap .btn .a {
        text-decoration: none;
    }

    #foot .sitemaps .sitemap .btn .a .txt {
        color: #333;
        text-decoration: none;
        font-weight: bold;
    }

    #foot .sitemaps .sitemap .btn .a .txt_other {
        color: #333;
        text-decoration: none;
    }

    #foot .sitemaps .sitemap .sub_btn .a {
        box-sizing: border-box;
        /*
		padding-left:14px;
		*/
        position: relative;
    }

    /*
	#foot .sitemaps .sitemap .sub_btn .a:after{
	width:8px;
	height:2px;
	left:0;
	top:0;
	bottom:0;
	position:absolute;
	margin:auto;
	background:#977eb5;
	content:" ";
	}
	*/
    #foot .sitemaps .sitemap .sub_btn .a .txt {
        font-size: 10px;
        font-weight: normal;
    }

    #foot_links {
        background: #333;
        padding: 10px 0;
        text-align: center;
        font-size: 12px;
    }

    #foot_links .btn:not(:last-child) {
        border-right: 1px solid rgba(255, 255, 255, 0.33);
    }

    #foot_links .btn a {
        display: inline-block;
        padding: 0 16px;
        color: #fff;
        line-height: 24px;
    }

    #foot_bottom {
        box-sizing: border-box;
        padding: 20px 20px 0 20px;
    }

    #foot_bottom .logo {
        float: left;
    }

    #foot_bottom .copyright {
        float: right;
    }
}

@media screen and (min-width: 1380px) {
    #foot_bottom {
        box-sizing: border-box;
        padding: 20px 50px 0 50px;
        border-top: 1px solid #f1f1f1;
    }
}

@media screen and (min-width: 1081px) {
    #foot .sitemaps .sitemap .sub_btn .a .txt {
        font-size: 12px;
    }
}

/*foot_fixed*/

#foot_fixed {
    position: fixed;
    bottom: 0;
    width: 100%;
    left: 0;
    min-height: 58px;
    background: #fff;
    z-index: 20;
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
}

#foot_fixed.active {
    height: 100%;
    z-index: 120;
    box-sizing: border-box;
    padding: 20px 40px;
}

#foot_fixed.active:before {
    z-index: 1;
    content: " ";
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    box-sizing: border-box;
    border: 1px solid #ddd;
}

#btn_foot_fixed_logout {
    width: 100%;
    text-align: center;
    line-height: 24px;
    height: 24px;
    margin: 17px auto;
    font-size: 18px;
}

#btn_foot_fixed_logout .btn {
    padding: 0 20px;
    position: relative;
}

#btn_foot_fixed_logout .btn .a {
    position: relative;
    overflow: visible;
}

#btn_foot_fixed_logout .btn .a .txt {
    color: #333;
}

#btn_foot_fixed_logout .btn[rel="login"] {
    border-right: 1px solid #ddd;
}

#btn_foot_fixed_logout .btn[rel="login"] .a .icon {
    width: 24px;
    height: 24px;
    background-image: url(/images/front/common/icon_lock.png);
    right: auto;
    left: -30px;
}

#foot_fixed .hello_wrap {
    height: 58px;
    position: relative;
}

#foot_fixed .hello_wrap .name {
    line-height: 48px;
    width: 200px;
    text-align: center;
}

#foot_fixed .hello_wrap .btn {
    width: 80px;
    height: 22px;
    right: 0px;
    left: auto;
    display: none;
    text-align: center;
}

#foot_fixed .hello_wrap .btn .a {
    box-sizing: border-box;
    border: 1px solid #333;
    line-height: 20px;
    color: #333;
    font-size: 12px;
}

#btn_foot_fixed {
    /* width:calc( 100% - 200px ); */
    width: 100%;
    height: 60px;
    /* text-align:right; */
    left: auto;
}

#btn_foot_fixed .btn {
    width: calc(25% - 1px);
    /* width:48px; */
    height: 58px;
    border-left: 1px solid #aaa;
}

#btn_foot_fixed.btn_cnt_3 .btn {
    width: 33.33333%;
    width: -webkit-calc(100% / 3);
    width: calc(100% / 3);
}

#btn_foot_fixed .btn:first-child {
    border-left: none;
}

#btn_foot_fixed .btn a {
    color: #444;
}

#btn_foot_fixed .btn .icon {
    width: 24px;
    height: 24px;
    margin: 10px auto 0;
}

#btn_foot_fixed .btn .txt {
    font-size: 10px;
    text-align: center;
    margin: 34px auto 0;
}

#btn_foot_fixed .btn[rel="member"] .icon {
    background-image: url(/images/front/common/icon_personal.png);
}

#btn_foot_fixed .btn[rel="preferential"] .icon {
    background-image: url(/images/front/common/icon_value.png);
}

#btn_foot_fixed .btn[rel="event"] .icon {
    margin-top: 8px;
    background-image: url(/images/front/common/icon_present.png);
}

#btn_foot_fixed .btn[rel="event"] .txt {
    margin-top: 32px;
    line-height: 1.1em;
}

#btn_foot_fixed .btn[rel="estate"] .icon {
    background-image: url(/images/front/common/icon_estate.png);
}

#btn_foot_fixed .btn[rel="membercard"] .icon {
    background-image: url(/images/front/common/icon_membercard.png);
}

#btn_foot_fixed .btn[rel="support"] .icon {
    width: 18px;
    height: 18px;
    margin-top: 11px;
    background-image: url(/images/front/common/icon_support.png);
}

#btn_foot_fixed .btn[rel="support"] .txt {
    margin-top: 32px;
    line-height: 1.1em;
}

#btn_foot_fixed .btn[rel="myhome"] .icon {
    background-image: url(/images/front/common/icon_myhome.png);
}

#btn_foot_fixed .btn[rel="procedure"] .icon {
    background-image: url(/images/front/common/icon_flow.png);
}

#btn_foot_fixed .btn[rel="maintenance"] .icon {
    background-image: url(/images/front/common/icon_maintenance.png);
}

#btn_foot_fixed .btn[rel="more"] {
    cursor: pointer;
}

#btn_foot_fixed .btn[rel="more"] .icon {
    background-image: url(/images/front/common/icon_more.png);
}

#btn_foot_fixed .btn[rel="member"],
#btn_foot_fixed .btn[rel="estate"],
#btn_foot_fixed .btn[rel="membercard"],
#btn_foot_fixed .btn[rel="myhome"],
#btn_foot_fixed .btn[rel="procedure"],
#btn_foot_fixed .btn[rel="maintenance"],
#btn_foot_fixed .btn[rel="support"] {
    /* display:none; */
}

#foot_fixed.active #btn_foot_fixed {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    z-index: 5;
    width: 100%;
    /*height:calc( 100% - 48px - 40px - 48px );*/
    height: calc(100% - 48px - 48px);
}

#foot_fixed.active #btn_foot_fixed .btn[rel="member"],
#foot_fixed.active #btn_foot_fixed .btn[rel="estate"],
#foot_fixed.active #btn_foot_fixed .btn[rel="membercard"],
#foot_fixed.active #btn_foot_fixed .btn[rel="myhome"],
#foot_fixed.active #btn_foot_fixed .btn[rel="procedure"],
#foot_fixed.active #btn_foot_fixed .btn[rel="maintenance"] {
    display: inline-block;
}

#foot_fixed.active #btn_foot_fixed .btn {
    width: 100%;
    height: calc(100% / 4);
    max-height: 80px;
    text-align: left;
}

#foot_fixed.active #btn_foot_fixed .btn:not([rel="more"]) .icon {
    left: 20px;
    right: auto;
}

#foot_fixed.active #btn_foot_fixed .btn:not([rel="more"]) .a {
    box-sizing: border-box;
    border-bottom: 4px solid #f1f1f1;
}

#foot_fixed.active #btn_foot_fixed .btn .txt {
    display: block;
    height: 20px;
    line-height: 20px;
    width: calc(100% - 80px);
    right: auto;
    left: 80px;
    color: #333;
}

#foot_fixed.active #btn_foot_fixed .btn[rel="more"] .icon {
    background-image: url(/images/front/common/icon_close.png);
}

#foot_fixed.active .hello_wrap {
    border-bottom: 1px solid #333;
    position: relative;
    z-index: 6;
}

#foot_fixed.active .hello_wrap .name {
    text-align: left;
}

#foot_fixed.active .hello_wrap .btn {
    display: block;
    z-index: 7;
}

.pager_wrap {
    width: auto;
    text-align: center;
    margin: 40px auto;
}

.pager_wrap .inner {
    display: inline-block;
    position: relative;
    padding: 0 48px;
}

.pager_wrap .arrow {
    width: 48px;
    height: 48px;
}

.pager_wrap .arrow_prev {
    right: auto;
}

.pager_wrap .arrow_next {
    left: auto;
}

.pager_wrap .arrow .icon {
    opacity: 0.3;
    filter: Alpha(opacity=30);
    width: 24px;
    height: 24px;
}

.pager_wrap .arrow_prev .icon {
    background-image: url(/images/front/common/icon_pager_prev.png);
}

.pager_wrap .arrow_next .icon {
    background-image: url(/images/front/common/icon_pager_next.png);
}

.pager_wrap .pager {
    display: inline-block;
}

.pager_wrap .btn {
    width: 48px;
    height: 48px;
}

.pager_wrap .btn .a {
    box-sizing: border-box;
    border: 1px solid #333;
    text-decoration: none;
    line-height: 46px;
    text-align: center;
    color: #333;
}

.pager_wrap .btn.here .a {
    background: #333;
    color: #fff;
}

.pager_wrap .btn:not(:last-child) .a {
    border-right: 0;
}

.move_page_wrap {
    padding-top: 0px;
    padding-bottom: 80px;
    border-top: 1px solid #333;
    position: relative;
}

.move_page_wrap .move {
    width: 50%;
    height: 40px;
    line-height: 40px;
    top: 40px;
}

.move_page_wrap .move .a {
    box-sizing: border-box;
    width: 140px;
    height: 100%;
    position: relative;
    color: #333;
    text-decoration: none;
    border: 1px solid #333;
    border-radius: 19px;
}

.move_page_wrap .move .a:hover .txt {
    opacity: 0.5;
    filter: Alpha(opacity=50;);
}

.move_page_wrap .move .icon {
    width: 24px;
    height: 24px;
    opacity: 0.33;
    filter: Alpha(opacity=33);
}

.move_page_wrap .move_prev {
    right: auto;
    text-align: left;
}

.move_page_wrap .move_prev .a {
    padding-left: 40px;
}

.move_page_wrap .move_prev .icon {
    background-image: url(/images/front/common/icon_pager_prev.png);
    right: auto;
    left: 10px;
}

.move_page_wrap .move_next {
    text-align: right;
    left: auto;
}

.move_page_wrap .move_next .a {
    padding-right: 40px;
    margin-left: auto;
}

.move_page_wrap .move_next .icon {
    background-image: url(/images/front/common/icon_pager_next.png);
    left: auto;
    right: 10px;
}

@media screen and (min-width: 641px) {
    .move_page_wrap {
        padding: 40px 0;
    }

    .move_page_wrap .to_link {
        margin: 0;
    }

    .move_page_wrap .move {
        top: 0;
        width: calc(50% - 100px);
    }
}

.to_pagetop {
    width: 100%;
    height: 0;
    position: relative;
    z-index: 10;
}

.to_pagetop .inner {
    position: fixed;
    bottom: -140px;
    top: auto;
    right: 77px;
    /*right:10px;*/
    left: auto;
    transition: right 0s;
    width: 48px;
    height: 48px;
}

.ie .to_pagetop .inner {
    right: 77px;
    /*right:27px;*/
}

.scrolled .to_pagetop .inner {
    bottom: 40px;
    /*bottom:10px;*/
}

.to_pagetop .a {
    background: #333;
    width: 48px;
    height: 48px;
    border-radius: 24px;
}

.to_pagetop .a[rel="pagetop"] {
    bottom: auto;
    top: -64px;
    background: #ccc;
}

.to_pagetop .a .icon {
    width: 24px;
    height: 24px;
}

.to_pagetop .a[rel="pagetop"] .icon {
    background-image: url(/images/front/common/to_pagetop.png);
}

.to_pagetop .a[rel="home"] .txt {
    text-align: center;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    font-family: "Century Gothic";
    height: 20px;
    line-height: 20px;
}

.footted .to_pagetop .inner {
    position: absolute;
    right: 60px;
}

.ie.footted .to_pagetop .inner {
    right: 60px;
    /*right:10px;*/
}

@media screen and (max-width: 960px) {
    .to_pagetop .inner {
        right: 10px;
    }

    .to_pagetop .a[rel="home"] {
        display: none;
    }

    .to_pagetop .a[rel="pagetop"] {
        top: 0;
        bottom: 0;
    }

    .scrolled .to_pagetop .inner {
        bottom: 80px;
    }

    .footted .to_pagetop .inner {
        position: absolute;
        right: 10px;
        bottom: 10px;
    }
}

.form_bottom_link a span {
    color: #333;
    text-decoration: underline;
}

.form_bottom_link a:hover span {
    text-decoration: none;
}

.sub_name_title {
    font-size: 24px;
    font-weight: bold;
    background: #dddddd;
    padding: 21px 30px;
    margin-top: 0px;
    margin-bottom: 27px;
    letter-spacing: 0.02em;
    position: relative;
    top: -15px;
}

.new_icon {
    color: #a5090e;
    font-size: 12px;
    font-style: oblique;
    padding: 2px 4px;
    border: 1px solid;
}

/**********************************
バナーエリアコンテンツ部分
***********************************/

#emergency_list {
    margin: 10px;
}

#emergency_list .copy {
    margin-bottom: 10px;
    line-height: 1.6em;
    font-size: 1.1em;
    background: #fff;
    border: 2px solid #999;
    padding: 10px 20px;
}

@media screen and (max-width: 640px) {
    #emergency_list .copy {
        margin-right: 20px;
    }
}

#banner_contents_block {
    letter-spacing: -0.4em;
    vertical-align: top;
    margin: 0 auto;
    width: 100%;
}

#banner_contents_block .column {
    margin: 0 15px 45px 15px !important;
}

#banner_contents_block .column a {
    color: #333;
    overflow: visible;
    text-decoration: none;
}

#banner_contents_block .column .photo {
    text-align: center;
}

#banner_contents_block .column .photo .img {
    position: relative;
    display: inline-block;
}

#banner_contents_block .column .info {
    padding-top: 15px;
}

#banner_contents_block .column .info .name {
    margin-top: 10px;
    font-weight: bold;
}

/* SP */

@media screen and (max-width: 640px) {
    /* 1個並び */
    #banner_contents_block[data-count="1"] .column,
    #banner_contents_block[data-count="2"] .column,
    #banner_contents_block[data-count="3"] .column,
    #banner_contents_block[data-count="5"] .column,
    #banner_contents_block[data-count="6"] .column {
        width: calc(100% - 30px);
    }

    #banner_contents_block[data-count="1"] .column .photo img.portrait,
    #banner_contents_block[data-count="2"] .column .photo img.portrait,
    #banner_contents_block[data-count="3"] .column .photo img.portrait,
    #banner_contents_block[data-count="5"] .column .photo img.portrait,
    #banner_contents_block[data-count="6"] .column .photo img.portrait {
        height: calc((100vw - 40px) / 4 * 3);
        width: auto;
    }

    /* 2個並び */
    #banner_contents_block[data-count="4"] .column,
    #banner_contents_block[data-count="5"] .column:nth-child(2),
    #banner_contents_block[data-count="5"] .column:nth-child(3),
    #banner_contents_block[data-count="5"] .column:nth-child(4),
    #banner_contents_block[data-count="5"] .column:nth-child(5),
    #banner_contents_block[data-count="6"] .column:nth-child(3),
    #banner_contents_block[data-count="6"] .column:nth-child(4),
    #banner_contents_block[data-count="6"] .column:nth-child(5),
    #banner_contents_block[data-count="6"] .column:nth-child(6) {
        width: calc(50% - 30px);
    }

    #banner_contents_block[data-count="4"] .column img.portrait,
    #banner_contents_block[data-count="5"] .column:nth-child(2) img.portrait,
    #banner_contents_block[data-count="5"] .column:nth-child(3) img.portrait,
    #banner_contents_block[data-count="5"] .column:nth-child(4) img.portrait,
    #banner_contents_block[data-count="5"] .column:nth-child(5) img.portrait,
    #banner_contents_block[data-count="6"] .column:nth-child(3) img.portrait,
    #banner_contents_block[data-count="6"] .column:nth-child(4) img.portrait,
    #banner_contents_block[data-count="6"] .column:nth-child(5) img.portrait,
    #banner_contents_block[data-count="6"] .column:nth-child(6) img.portrait {
        height: calc(((50vw - 5px) - 30px) / 4 * 3);
        width: auto;
    }
}

/* PC */

@media screen and (min-width: 641px) {
    #banner_contents_block .column {
        padding: 0 0 0 30px;
        border-left: 1px solid #dadada;
    }

    /* 2個並びの設定 */
    #banner_contents_block[data-count="1"] .column,
    #banner_contents_block[data-count="2"] .column,
    #banner_contents_block[data-count="4"] .column,
    #banner_contents_block[data-count="5"] .column:nth-child(1),
    #banner_contents_block[data-count="5"] .column:nth-child(2),
    #banner_contents_block[data-count="6"] .column {
        width: calc(50% - 77px);
    }

    /* 2個並びの中の縦長画像設定 */
    #banner_contents_block[data-count="1"] .column .photo img.portrait,
    #banner_contents_block[data-count="2"] .column .photo img.portrait,
    #banner_contents_block[data-count="4"] .column .photo img.portrait,
    #banner_contents_block[data-count="5"] .column:nth-child(1) .photo img.portrait,
    #banner_contents_block[data-count="5"] .column:nth-child(2) .photo img.portrait,
    #banner_contents_block[data-count="6"] .column .photo img.portrait {
        height: calc((((100vw - 10px) / 2) - 30px) / 4 * 3);
        max-height: 373px;
        width: auto;
    }

    /* 3個並びの設定 */
    #banner_contents_block[data-count="3"] .column,
    #banner_contents_block[data-count="5"] .column:nth-child(3),
    #banner_contents_block[data-count="5"] .column:nth-child(4),
    #banner_contents_block[data-count="5"] .column:nth-child(5) {
        width: calc((100% / 3) - 72px);
    }

    /* 3個並びの中の縦長画像の設定 */
    #banner_contents_block[data-count="3"] .column .photo img.portrait,
    #banner_contents_block[data-count="5"] .column:nth-child(3) .photo img.portrait,
    #banner_contents_block[data-count="5"] .column:nth-child(4) .photo img.portrait,
    #banner_contents_block[data-count="5"] .column:nth-child(5) .photo img.portrait {
        height: calc((((100vw - 10px) / 3) - 30px) / 4 * 3);
        max-height: 241px;
        width: auto;
    }

    /* 右端の経線 */
    #banner_contents_block[data-count="1"] .column:nth-child(1),
    #banner_contents_block[data-count="2"] .column:nth-child(2),
    #banner_contents_block[data-count="3"] .column:nth-child(3),
    #banner_contents_block[data-count="4"] .column:nth-child(even),
    #banner_contents_block[data-count="5"] .column:nth-child(2),
    #banner_contents_block[data-count="5"] .column:nth-child(5),
    #banner_contents_block[data-count="6"] .column:nth-child(even) {
        padding: 0 30px 0 30px;
        border-right: 1px solid #dadada;
    }
}

#home_archives_list .column.new .info .category {
    width: 100%;
    background: none;
}

#home_archives_list .column.new .info .category::after {
    content: "NEW";
    color: #9a8860;
    font-style: italic;
    font-size: 14px;
    margin-left: 10px;
    padding-left: 4px;
    border-left: solid 1px #9a8860;
    display: inline-block;
    vertical-align: middle;
    line-height: 1.4em;
    font-weight: bold;
}

@media screen and (min-width: 641px) {
    #home_archives_list .column.new .info .category::after {
        font-size: 16px;
        line-height: 1.6em;
        padding-left: 8px;
    }
}

#home_archives_list .column.new .info .category .a {
    width: 105px;
    vertical-align: middle;
}

#home_archives_list .archives .column .info .name p,
#home_archives_list .archives .column.new .info .name p {
    display: inline;
}

#home_archives_list .archives .column .info .name:after,
#home_archives_list .archives .column.new .info .name:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    /* 既存afterの打ち消し */
    border: none;
    border-top: solid 2px #9a8860;
    border-right: solid 2px #9a8860;
    padding: 0;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: 5px;
    margin-top: -2px;
}

/* ピックアップ1～4のCSS設定 */

#home_pickup .banner_pickup {
    margin-top: 20px;
}

#home_pickup .banner_pickup .img,
#home_footer_banner .banner_pickup .img {
    text-align: center;
}

#home_pickup .banner_pickup .img img.portrait,
#home_footer_banner .banner_pickup .img img.portrait {
    height: calc((100vw - 40px) / 4 * 3);
    width: auto;
}

@media screen and (min-width: 641px) {
    #home_pickup .banner_pickup {
        margin-top: 30px;
        margin-bottom: 0;
    }

    #home_pickup .banner_pickup .img img.portrait,
    #home_footer_banner .banner_pickup .img img.portrait {
        height: calc((((100vw - 10px) / 2) - 30px) / 4 * 3);
        max-height: 373px;
        width: auto;
    }

    #home_footer_banner .banner_pickup {
        margin-bottom: 30px;
    }

    #home_footer_banner .section_body_wrap:last-child .banner_pickup {
        margin-bottom: 20px;
    }
}

.header {
    padding-bottom: 19px;
    display: flex;
    align-items: center;
    box-shadow: unset;
    background: #ffffff;
}

.header .content-header {
    padding-left: 10px !important;
}

.header .content-header {
    margin: auto;
}

.header .logo-toyo {
    float: left;
    margin-top: 15px;
    padding-left: 0px;
}

.header .content-header .title {
    padding: 25px 0 0 20px;
    font-weight: bold;
    font-size: 108%;
    color: #195d57;
    float: left;
}
.header .content-header .pharm-title {
    padding: 25px 0 0 20px;
    font-weight: bold;
    font-size: 108%;
    color: #195d57;
    float: left;
}

.header .information-user {
    display: flex;
    justify-content: right;
    grid-gap: 20px;
    align-items: baseline;
}

.header .information-user a {
    color: #195d57;
    text-decoration: underline;
}

.header .information-user ul li a {
    background: url(/images/pharm/common/ic_passchange.gif) no-repeat 0 0;
    padding-left: 16px;
}

.header .information-user .h_login {
    border-radius: 0 0 10px 10px;
    padding: 30px 0 30px 20px;
    background-image: url(/images/pharm/common/loginbg.gif);
}

.header .header-title {
    display: flex;
    align-items: end;
}

.header .list-function {
    margin-bottom: -15px;
}

#menuLink,
#pharmLink,
#inqOffice {
    padding: 10px 0px;
}

#menuLink {
    padding-top: 0px;
}

#menuLink li {
    list-style-type: none;
    margin: 0px;
}

#pharmLink li {
    list-style-type: none;
}

#menuLink li a {
    display: block;
    padding: 10px 0 10px 40px;
    background-color: #f5f5f5;
    border: 1px solid #538681;
    border-bottom: none;
    text-decoration: underline;
    color: #0c5c47;
    font-weight: 500;
    position: relative;
}

#menuLink li a::before {
    content: "";
    background: url("/images/pharm/common/ic_lnavi_link.gif") no-repeat;
    width: 16px;
    height: 16px;
    position: absolute;
    left: 15px;
    top: 55%;
    transform: translateY(-50%);
}

#menuLink li a:hover {
    background-color: #e0f2f1;
}

.last {
    border-bottom: 1px solid #538681;
}

#pharmLink li a {
    display: block;
    padding: 15px;
    background-color: #f5f5f5;
    border: 3px solid #538681;
    text-decoration: underline;
    color: #0c5c47;
    text-align: center;
    font-size: 18px;
    font-weight: 500;
}

#menuLink li a:hover,
#pharmLink li a:hover {
    background-color: #e0f2f1;
}

#inqOffice {
    background-color: #e5e5e5;
    padding: 15px;
    margin-bottom: 15px;
}

#inqOffice dl {
    margin: 0;
    padding: 0;
}

#inqOffice dt {
    font-weight: bold;
    color: #000000;
    margin-bottom: 5px;
}

#inqOffice dd {
    margin-left: 0;
    color: #000000;
    margin-bottom: 5px;
}

#inqOffice dd span {
    font-weight: bold;
}

#inqOffice .mail a {
    color: #0c5c47;
    text-decoration: underline;
    font-size: 90%;
}

#inqOffice .mail a:hover {
    text-decoration: underline;
}

.inqMail a {
    display: block;
    padding: 10px 10px 10px 50px;
    background-color: #f5f5f5;
    border: 3px solid #538681;
    text-align: center;
    color: #0c5c47;
    text-decoration: underline;
    position: relative;
    font-size: 14px;
}

.inqMail a::before {
    content: "";
    background: url("/images/pharm/common/ic_mail.gif") no-repeat;
    width: 30px;
    height: 18px;
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
}

.inqMail a:hover {
    background-color: #e0f2f1;
}

button {
    padding: 10px;
    background-color: #0c5c47;
    color: #fff;
    border: none;
    cursor: pointer;
}

button:hover {
    background-color: #0a4a37;
}

ul {
    padding-left: 0;
}

li {
    margin-bottom: 10px;
}

.mb-2 {
    margin-bottom: 20px;
}

#contents {
    padding: 15px 0;
    margin: auto;
    float: none;
}

.copyright {
    text-align: center;
    padding: 10px 0;
    font-size: 14px;
    margin: auto;
    float: none;
}

#gnavi {
    background: url(/images/pharm/common/lnavi_btm.gif) no-repeat left bottom;
    margin-bottom: 10px;
    padding-bottom: 5px;
}

#gnaviInner {
    background: url(/images/pharm/common/lnavi_top.gif) no-repeat left top;
    padding-top: 16px;
}

#gnavi ul {
    background: url(/images/pharm/common/lnavi_bg.gif) repeat-y;
}

#gnavi li {
    width: 250px;
    padding: 0 5px;
    margin-bottom: 0;
}

#gnavi li a {
    background: url(/images/pharm/common/ic_lnavi_cursor.gif) no-repeat 10px 12px;
    color: #ffffff;
    padding: 8px 20px;
    display: block;
    border-bottom: #c6d6d5 1px solid;
    text-decoration: none;
}

#gnavi li a:hover {
    background: url(/images/pharm/common/ic_lnavi_cursor.gif) no-repeat 10px 12px #538681;
    /*padding: 5px 10px 25px 20px;*/
}

#navi {
    width: 250px;
}

#navi #backhome {
    background: url(/images/pharm/common/ic_lnavi_top.gif) no-repeat 5px 5px;
    padding-left: 20px;
}

#navi #backhome a {
    color: #195d57;
    text-decoration: underline;
    font-size: 16px;
}

#idxNavi {
    background: url(/images/pharm/common/idx_menu_bg.gif) no-repeat;
    width: 100%;
    background-size: cover;
    height: auto;
    padding: 10px 30px 30px 0px;
    margin-bottom: 30px;
    overflow: hidden;
}

#idxMenu {
    margin: 23px 25px 70px 25px;
    padding-bottom: 50px;
}

#idxNavi p {
    padding-top: 30px;
    margin-left: 40px;
}

dl {
    margin: 0;
    padding: 0;
}

#idxNavi .n1,
#idxNavi .n2 {
    padding-bottom: 30px;
}

#idxNavi .n1 dt,
#idxNavi .n2 dt {
    margin-bottom: 10px;
}

#idxNavi .n1 dd,
#idxNavi .n2 dd {
    font-size: 93%;
    line-height: 1.5;
    padding-left: 5px;
}

@media (max-width: 767px) {
    .n2 img {
        max-width: 150px;
        height: auto;
    }

    #idxMenu {
        margin: 20px 20px 50px 25px;
        padding-bottom: 50px;
    }

    .n2 dd {
        font-size: 10px !important;
    }

    .n1 img {
        max-width: 200px;
        height: auto;
    }

    .n1 dd {
        font-size: 10px !important;
    }

    #idxNavi p img {
        width: 80px;
        height: auto;
    }

    #idxNavi {
        height: 430px;
    }

    #idxNavi .n1,
    #idxNavi .n2 {
        padding-bottom: 10px;
    }

    #idxNavi .n1 dt,
    #idxNavi .n2 dt {
        margin-bottom: 5px;
    }

    .logo-toyo img {
        width: 150px;
        height: auto;
        margin-left: 20px;
    }

    .title {
        font-size: 12px !important;
    }

    .pharm-title {
        font-size: 12px !important;
        text-align: center;
    }

    #date {
        font-size: 10px !important;
    }

    .header .information-user .h_login {
        border: 1px solid #f2f2f2;
        border-radius: 0 0 10px 10px;
        padding: 20px 20px 20px 0px;
        background: #f7f7f7;
        text-align: right;
    }
}

@media (min-width: 768px) and (max-width: 1299px) {
    .n2 img {
        max-width: 250px;
        height: auto;
    }

    .n2 dd {
        font-size: 12px !important;
    }

    .n1 img {
        max-width: 380px;
        height: auto;
    }

    .n1 dd {
        font-size: 12px !important;
    }

    #idxNavi p img {
        width: 120px;
        height: auto;
    }

    #idxNavi {
        height: 300px;
        width: 100%;
        max-width: 1299px;
        margin-bottom: 30px;
    }

    .logo-toyo img {
        width: 300px;
        height: auto;
        margin-left: 20px;
    }
    .pharm-title {
        font-size: 16px !important;
    }
    .title {
        font-size: 16px !important;
    }

    #date {
        font-size: 12px !important;
    }

    .header .information-user .h_login {
        border: 1px solid #f2f2f2;
        border-radius: 0 0 10px 10px;
        padding: 20px 10px 20px 10px;
        background: #f7f7f7;
        font-size: 12px;
        text-align: right;
    }

    .list-function ul {
        display: inline-flex;
        gap: 20px;
        float: left;
    }

    .list-function ul li {
        font-size: 16px;
    }
    .header-title {
        margin-bottom: 10px;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    #idxNavi {
        height: 675px;
        width: 100%;
        max-width: 991px;
    }
}
@media (min-width: 1300px) {
    .content-header.col-xl-6,
    .content-header,
    #content,
    #contents,
    .copyright {
        width: 960px !important;
        height: auto;
    }

    .header .content-header {
        display: flex;
        padding: 0 !important;
    }

    .header .header-title {
        flex-basis: 605px;
        align-items: center;
    }

    .header .header-title .logo-toyo {
        flex-basis: 247px;
        margin-right: 2px;
    }

    .header .content-header .pharm-title{
        padding-left: 0;
    }

    .header .information-user {
        flex: 1;
        padding: 0;
        grid-gap: 5px;
    }

    .information-user .user{
        padding: 0;
        flex-basis: 120px;
    }

    .information-user .list-function{
        flex: 1;
        text-align: right;
        padding-right: 0;
    }

    .information-user .list-function li:last-child{
        margin-bottom: 0;
    }

    #idxNavi {
        background: url(/images/pharm/common/idx_menu_bg.gif) no-repeat;
        width: 100%;
        max-width: 100%;
        background-size: cover;
        height: 330px;
        padding: 0 0 30px 0;
        margin-bottom: 30px;
        overflow: hidden;
    }

    .h_login {
        padding: 25px;
        width: 120px;
    }

    #date {
        font-size: 14.3531px;
        margin-bottom: 5px;
    }
}

#idxContact {
    padding: 10px 0px 10px 10px;
    padding-top: 0px;
}

#idxContact li {
    list-style-type: none;
    padding-bottom: 10px;
}

#idxContact li a {
    display: block;
    padding: 15px;
    background-color: #f5f5f5;
    border: 3px solid #538681;
    text-decoration: underline;
    color: #0c5c47;
    text-align: center;
    font-size: 18px;
}

#idxContact li a:hover {
    background-color: #e0f2f1;
}

#idxContactInfo {
    padding: 10px 0px 10px 10px;
    padding-top: 0px;
}

#idxContactInfo dt {
    font-size: 104%;
    font-weight: bold;
    margin-bottom: 10px;
}

#idxContactInfo dd {
    margin-bottom: 5px;
    line-height: 1.5;
}

#idxContactInfo dd span {
    font-weight: bold;
    font-size: 100%;
    line-height: 1.5;
}

#idxContactInfo .mail a {
    color: #0c5c47;
    font-weight: normal;
    font-size: 100%;
}

#idxPharmContact {
    margin-top: 10px;
}

#idxPharmContact img {
    padding: 10px 0px 10px 10px;
    width: 100%;
}

dt {
    font-weight: 500;
}

table.pageNation2 a.num:hover {
    background: #eef4f9;
}

#idxInfo dl {
    margin-top: 20px;
}

#idxInfo dt {
    font-size: 97%;
    color: #666;
    margin-bottom: 5px;
}

#idxInfo dt span {
    font-size: 100%;
    color: #000;
}

#idxInfo dd {
    font-size: 97%;
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: #999 1px dotted;
    line-height: 1.4;
}

#idxInfo dd a {
    line-height: 1.4;
    font-size: 104%;
    color: #195d57;
}

.fw-bold {
    font-weight: bold;
}

a.blankwin,
a.blankwin:link,
a.blankwin:visited {
    padding-right: 15px;
    padding-left: 5px;
}

.pdf {
    font-size: 90%;
    color: #666;
    padding-left: 10px;
}

.pagination {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin: 0;
    list-style: none;
    gap: 3px;
}

.pagination li {
    display: inline-flex;
    align-items: center;
    margin: 0;
}

.pagination li a,
.pagination li span {
    display: block;
    text-decoration: underline;
    font-size: 14px;
    color: #195d57;
    background-color: none !important;
    transition: all 0.3s;
}

.pagination li a:hover {
    background-color: #e6f5f4;
}

.pagination li.disabled {
    display: none;
}

.pagination li.active span {
    font-weight: bold;
    color: #fff;
    text-decoration: none;
    background-color: #195d57;
}

.pagination > .active > a,
.pagination > .active > a:focus,
.pagination > .active > a:hover,
.pagination > .active > span,
.pagination > .active > span:focus,
.pagination > .active > span:hover {
    z-index: 3;
    cursor: default;
    background-color: #195d57;
}

@media (max-width: 600px) {
    .pagination {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .pagination li a,
    .pagination li span {
        font-size: 12px;
        padding: 8px 10px;
    }
}

.container-form {
    float: right;
    margin-right: 10px;
}

@media (max-width: 768px) {
    #navi {
        margin: 0 auto;
    }

    .section_cont {
        padding-top: 10px;
        padding-bottom: 0px;
    }

    .container-form {
        margin: 0 auto;
    }
}

.btnbox3 {
    text-align: center;
    margin-top: 20px;
}

.btnbox3 a {
    color: #195d57;
}

#information .titleInfo {
    margin-top: 5px;
    font-weight: 500;
}

#information .titleInfo span {
    margin-right: 10px;
}

#information .content {
    margin-top: 10px;
    margin-bottom: 10px;
}

.reqTitle {
    margin-bottom: 35px;
}

.reqTxt {
    margin-bottom: 30px;
}

.itemSearch {
    margin-bottom: 40px;
}

.itemSearch dt {
    float: left;
    width: 120px;
}

.itemSearch dd #Keyword {
    width: 95%;
    padding: 2px 3px;
    margin-right: 10px;
}

.itemSearch dd {
    float: left;
}

.itemSearch:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.btnbox {
    text-align: center;
    margin-bottom: 10px;
}

.imgcd {
    background: url(/images/pharm/common/img_cursor_down.gif) no-repeat center bottom;
    padding-bottom: 30px;
}

#contents .stitle {
    width: 100%;
    height: 30px;
    border: 1px solid #8b8b8b;
    font-weight: bold;
    font-size: 108%;
    margin-bottom: 20px;
    text-align: center;
}

.tw4 {
    width: 40%;
}

.tw3 {
    width: 30%;
}

.tw1b {
    width: 15%;
}

.tw2b {
    width: 25%;
}

.tblbnone {
    border: none !important;
    background: none !important;
    padding: 5px 0;
    text-align: center;
}

.tblbnone .btn-remove {
    width: 100%;
    border: 1px solid #cccccc;
    border-radius: 5px;
    box-shadow: 1px 1px 1px #cccccc;
    padding: 5px 0px;
    text-align: center;
    font-weight: bold;
    background: #ffffff;
}

.tblbnone .btn-remove:hover {
    background: #1a5d57;
    color: #ffffff;
}

.tblbnone .btn-thickbox {
    width: 100%;
    border: 1px solid #cccccc;
    border-radius: 5px;
    box-shadow: 1px 1px 1px #cccccc;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    color: #ffffff;
    background: #1a5d57;
}

.tbl01 {
    width: 100%;
    border-left: #cccccc 1px solid;
}

.tbl01 th {
    background-color: #1a5d57;
    padding: 10px;
    text-align: center;
    color: #fff;
    font-weight: bold;
    border-top: #cccccc 1px solid;
    border-right: #cccccc 1px solid;
    border-bottom: #cccccc 1px solid;
    line-height: 1.4;
}

.tbl01 td {
    padding: 10px 15px;
    border-right: #cccccc 1px solid;
    border-bottom: #cccccc 1px solid;
    background: #ffffff;
    font-size: 93%;
    line-height: 1.4;
}

.docTitle {
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-left: 5px solid #195d57;
    background-color: #f7f7f7;
    padding: 10px;
    font-weight: bold;
    font-size: 108%;
}

.docContainer dt {
    margin-top: 15px;
}

.docContainer dt span {
    font-size: 100%;
    color: #000;
}

.docContainer dd {
    font-size: 97%;
    margin-top: 5px;
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: #999 1px dotted;
    line-height: 1.4;
    position: relative;
}
.docContainer dd span {
    display: inline-block;
    margin: 0;
    padding: 0;
    vertical-align: top;
}
.docContainer span.pdf {
    font-size: 90%;
    margin-left: 10px;
}

.docContainer dd a {
    line-height: 1.4;
    color: #195d57;
    display: inline-block;
    vertical-align: top;
}

.attention {
    padding: 20px 0;
}

.attention p {
    width: 250px;
    background: url(/images/pharm/common/ic_attention.gif) no-repeat 0 0;
    padding-left: 30px;
    padding-top: 5px;
    height: 25px;
    font-size: 108%;
    font-weight: bold;
    color: #cc0000;
    margin: 0 auto;
}

.more {
    text-align: right;
    margin-top: -5px;
}

.more a {
    font-size: 85%;
    color: #195d57;
    line-height: 1.2;
}

.mx-auto {
    margin: auto;
    float: none;
    padding-top: 10px;
}

#docBase {
    font-size: 18px;
    font-weight: 500;
    margin: 50px auto 0;
    border: 3px solid #538681;
    padding: 14px 0;
    text-align: center;
    background-color: #f7f7f7;
}

#docBase a {
    color: #195d57;
    text-decoration: underline;
}

#docBase a:hover {
    text-decoration: none;
    color: #195d57;
    opacity: 0.8;
}

#topPageContact {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.pharm-link {
    font-size: 16px;
    font-weight: normal;
    margin: 20px 0 0 0;
    border: 3px solid #538681;
    padding: 14px 0;
    text-align: center;
}

.pharm-link a {
    color: #195d57;
    text-decoration: underline;
}

.pharm-link a:hover {
    text-decoration: none;
    color: #195d57;
    opacity: 0.8;
}

.mt-2 {
    margin-top: 20px;
}

.mail-contact {
    background: #fff url(/images/school/common/ic_mail.gif) no-repeat 40px 20px;
    font-size: 14px;
    display: block;
    border: #538681 3px solid;
    padding: 20px 0 20px 90px;
    background-color: #fff;
    margin-top: 10px;
    text-align: left;
}

#topPageContact #inqOffice a {
    color: #195d57;
    text-decoration: underline;
    outline: 0;
}

#topPageContact #inqOffice a:hover {
    text-decoration: none;
    color: #195d57;
    opacity: 0.8;
}

@media (min-width: 992px) {
    .col-md-5-5 {
        width: 45%;
    }

    .col-md-8-5 {
        width: 66%;
        float: left;
        margin-right: 4%;
    }

    .col-md-2-5 {
        width: 30%;
        float: left;
    }
    .col-md-74 {
        width: 74%;
    }
}

.field-login {
    margin: 10px 0 15px;
}

.row-login-data {
    margin-top: 20px;
}

.form-header-title {
    font-size: 22px;
    color: #ffff;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.form-pharm-user {
    background: #22635e;
}

.form-school-user {
    background: #619904;
}

.login-body {
    border: 1px solid #f2f2f2;
    padding: 5px;
    border-radius: 5px;
}

.login-field {
    border-radius: 5px;
    padding-bottom: 10px;
    background: #F3F7F6;
}

.chip,
.error-message {
    color: #ff0000;
    word-wrap: break-word;
    max-width: 250px;
    text-align: left;
}

.error-message {
    font-weight: bold !important;
    max-width: 100% !important;
    font-size: 13.8876px;
}

.field-label {
    font-size: 18.2px;
    font-weight: bold;
    color: #125d57;
}

.mt-3 {
    margin-top: 30px !important;
}

.mb-3 {
    margin-bottom: 30px !important;
}

.mt-5 {
    margin-top: 50px !important;
}

.mp-0 {
    margin: 0px !important;
    padding: 0px !important;
}

.emergency-mode {
    border: 2px solid red;
    padding: 5px;
    color: red;
    font-weight: bold;
}

@media (min-width: 768px) {
    .col-sm-64 {
        width: 64%;
    }
}

@media (max-width: 768px) {
    .emergency-mode {
        border: 1px solid red;
        padding: 5px;
        color: red;
        font-weight: bold;
        font-size: 8px;
        width: 100%;
        text-align: center;
    }

    .mergency-column {
        padding-right: 0px !important;
    }

    .information-user {
        display: block;
        padding-left: 5px !important;
        padding-right: 5px !important;
    }

    .header-title {
        padding-right: 5px !important;
        margin-bottom: 10px;
    }

    .logo-toyo {
        padding-right: 5px !important;
    }

    #idxContact li a {
        padding: 10px;
        font-size: 13px;
    }
}

.text-truncate {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 90%;
    vertical-align: middle;
}

.container-full {
    border-top: 5px solid #e5e5e5;
    border-bottom: 5px solid #e5e5e5;
    width: 100%;
}

z

@media (min-width: 1300px) {
    .col-xl-12 {
        width: 100% !important;
    }

    .col-xl-11 {
        width: 91.66666667% !important;
    }

    .col-xl-10 {
        width: 83.33333333% !important;
    }

    .col-xl-9 {
        width: 75% !important;
    }

    .col-xl-8 {
        width: 66.66666667% !important;
    }

    .col-xl-7 {
        width: 58.33333333% !important;
    }

    .col-xl-6 {
        width: 50% !important;
    }

    .col-xl-5 {
        width: 41.66666667% !important;
    }

    .col-xl-4 {
        width: 33.33333333% !important;
    }

    .col-xl-3 {
        width: 25% !important;
    }

    .col-xl-2 {
        width: 16.66666667% !important;
    }

    .col-xl-1 {
        width: 8.33333333% !important;
    }

    .col-xl-70 {
        width: 690px !important;
    }
}

.force-text-center {
    text-align: center !important;
}
#loginContents {
    background: none !important;
    padding: 0 !important;
    box-shadow: none !important;
    margin-top: 50px;
    margin-bottom: 50px;
}

.custom-auth-font {
    font-family: "Helvetica Neue", Helvetica, Arial, "Noto Sans Japanese", "游ゴシック", YuGothic,
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif !important;
}

/*-------------------------------------------　*/
/*add_250609*/
.flex-center {
    display: flex;
    justify-content: center;
}