@charset "UTF-8";

:root {
    --color-hyper-link: #62B0B4;
    --color-hyper-link-hover: #62B0B4;
}

/* layout  ------------------------------*/
body {
    position: relative;
    /*
    font-family: "ヒラギノ明朝 ProN W2", "HiraMinProN-W2", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-family: Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    font-family: "游明朝", "YuMincho", serif;
    font-family: "游ゴシック", "YuGothic", sans-serif;
    */
	font-family: Meiryo, メイリオ, 'MS PGothic', arial, helvetica, sans-serif;
    color: #222;
    text-align: center;
    padding-top: 62px;
}

@media (min-width: 768px) {
    body {
        padding-top: 71.578px
    }
}

#container {
    text-align: left;
}

#header, #footer, .header_sub_menu, .tab li, .btn, .b_submit input {
    /*font-family: "游明朝", "YuMincho", serif;*/
    line-height: 1rem;
}

h1, h2, h3, h4, .serif, #side, .en {
    /*font-family: "游明朝", "YuMincho", serif;*/
    font-weight: bold;
    line-height: 1.5rem;
}

.row {
    margin-right: auto;
    margin-left: auto;
}

img {
    max-width: 100%;
}

/*----------------------------
 　本文
　----------------------------*/
.w-x18 {
    font-size: 1.8em;
}

.w-x17 {
    font-size: 1.7rem;
}

.w-x15 {
    font-size: 1.5em;
}

.w-x13 {
    font-size: 1.3em;
}

.w-large {
    font-size: 1.25em;
}

.w-x115 {
    font-size: 1.15em;
}

.w-small {
    font-size: 0.85em;
}

.w-exsmall {
    font-size: 0.71em;
}

.w-bold {
    font-weight: bold;
}

.break-keep {
    word-break: keep-all;
}

/*----------------------------
  文字色
　----------------------------*/
.w-white {
    color: #ffffff !important;
}

.w-blue {
    color: #0168b7 !important;
}

.w-green {
    color: #62B0B4 !important;
}

.w-lgreen {
    color: #01B7AB!important;
}

.w-red {
    color: #d90f0f !important;
}

.w-gray {
    color: #8b8b8b;
}

.w-black {
    color: #000000;
}

/* Facebook ロゴ色 */
.w-facebook {
    color: #1877f2;
}
svg.w-facebook {
    fill: #1877f2;
}

div.overflow-hidden {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* 背景色 */
.bg-green {
    background-color: #8ECBCC;
}

/*----------------------------
  shadow
　----------------------------*/
.shadow-l1 {
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, .25));
}

.shadow-l2 {
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, .35));
}

.shadow-l3 {
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, .45));
}

/* header  ------------------------------*/
#header {
    margin-top: 1rem;
    width: 1050px;
    margin-right: auto;
    margin-left: auto;
}

#header h1 {
    float: left;
    margin-right: 2rem;
}

#header a {
    text-decoration: none;
    color: #4D4D4D;
}

#header a:hover {
    text-decoration: none;
    color: #0A3C41;
}

#header .snavi {
    margin-bottom: 0.5rem;
}

#responsiveHeader .snavi ul {
    font-size: 0.8rem;
}

#header li.storecart span {
    position: absolute;
    top: 0;
    right: -1.4rem;
    color: #FFF;
    font-size: 0.7rem;
    padding: 0.2rem 0.5rem;
    background-color: #0A3C41;
    border-radius: 1rem;
    -webkit-border-radius: 1rem;
    -moz-border-radius: 1rem;
}

#header form {
    float: right;
    padding: 0.3em;
    border: 1px solid #cce1f2;
}

#header form input {
    border: none;
    vertical-align: middle;
}

#header form input.b_search {
    font-size: 0;
    width: 20 p;
    height: 20px;
    background: url(../images/b_search_bg.png) -20px 0 no-repeat;
}

#header form input.b_search:hover {
    cursor: pointer;
}

a#fsearch {
    float: right;
    color: #0A3C41;
    margin-right: 0.5em;
    background: #FFFFFF url(../images/i_search.png) 0.5em center no-repeat;
    border: 1px solid #0A3C41;
    padding-top: 0.7em;
    padding-right: 0.5em;
    padding-bottom: 0.5em;
    padding-left: 2.5em;
}

nav#responsiveHeader {
    justify-content: space-between;
}

nav#responsiveHeader img#logoSp {
    height: 33px;
}

@media (min-width: 768px) {
    nav#responsiveHeader img#logo {
        width: 230px;
    }
}

@media (min-width: 1070px) {
    nav#responsiveHeader img#logo {
        width: 355px;
    }
}

nav .nav-item a {
    position: relative;
    display: inline-block;
    transition: .3s;
    height: 25px;
    vertical-align: sub;
    color: #4d4d4d;
}

nav .nav-item a::after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    width: 0;
    height: 1px;
    background-color: #0A3C41;
    transition: .3s;
}

nav .nav-item a:hover {
    color: #0A3C41;
    text-decoration: none;
}

nav .nav-item a:hover::after {
    width: 100%;
}

.nav-bg-white {
    background-color: #ffffff;
}

li.active button.btn-solid:hover {
    border-bottom-color: rgba(255, 255, 255, 0);
}

div.navbar-collapse {
    text-align: center;
    flex-grow: 0;
}

.nav-item {
    border-top: 1px solid #dee2e6;
}

#loginMenuPc button {
    width: 155px;
}

#loginMenuSp {
    /*position: absolute;*/
    /*top: 4px;*/
    /*right: 4.5em;*/
}

#loginMenuPc a:hover,
#loginMenuSp a:hover {
    text-decoration: none;
}

.tooltip .tooltip-inner {
    color: red;
    background-color: #fff;
    border: solid 1px #000;
}

.tooltip-auto[x-placement^=bottom] .arrow::before,
.tooltip .arrow::before {
    bottom: 0;
    border-width: 0 !important;
    border-bottom-color: #fff !important;
}

.navbar-nav {
    white-space: nowrap;
}

a.nav-link {
    color: #62B0B4;
    font-size: 16px;
}

a.nav-link:hover {
    color: #0A3C41;
}

.navbar-light .navbar-toggler {
    border-color: #ffffff;
}

.navbar-toggler[aria-expanded=false]::before {
    width: 14px;
    display: inline-block;
    content: '\f0c9';
    color: #888888;
    outline: none;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
}

.navbar-toggler[aria-expanded=true]::before {
    width: 14px;
    display: inline-block;
    content: '\f00d';
    color: #888888;
    outline: none;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
}

@media (min-width: 768px) {
    li.active button.btn-solid {
        /*border-bottom-color: #0168b7;*/
    }

    li.active button.btn-solid:hover {
        border-bottom-color: rgba(255, 255, 255, 0);
    }

    #right-menu-button button {
        width: 155px;
    }

    #guide-link {
        text-align: right;
    }

    .nav-item {
        border-top: none;
    }
}

button.btn-link {
    background-color: rgba(255, 255, 255, 0);
    border-color: rgba(255, 255, 255, 0);
    color: #888888;
}

button.btn-link:hover {
    background-color: #e8f0fe;
    border-color: #e8f0fe;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.12);
}

button.btn-link:active,
button.btn-link:focus {
    background-color: rgba(255, 255, 255, 0) !important;
    border-color: rgba(255, 255, 255, 0) !important;
}

button:focus, *:focus {
    outline: none;
}

/* gnavi  ------------------------------*//*
#gnavi li{
	float:left;
	font-size:1.1rem;
}
#gnavi li a{
	display:block;
	padding:0.5rem 1rem;
	margin:0 0.5rem;
	border-bottom:2px solid #FFF;
}
#gnavi li.on a,
#gnavi li a:hover{
	color:#0A3C41;
	border-bottom:2px solid #0A3C41;
}*/


.header_sub_menu {
    font-size: 0.9rem;
    background-color: #f5f5f5;
    padding: 0.3rem 1.5rem;
}

.header_sub_menu li:not(:last-child) {
    float: left;
    margin-right: 1.5rem;
}

@media (min-width: 991px) {
    .header_sub_menu li:not(:last-child) {
        margin-right: 1.5rem !important;
    }
}

.header_sub_menu li a {
    color: #888;
    display: block;
    padding: 0.5rem 0.5rem 0.3rem 0.5rem;
    margin-bottom: 2px;
    text-decoration: none;
    background-repeat: no-repeat;
    background-position: 0.5rem center;
}


.header_sub_menu li.on a,
.header_sub_menu li a:hover {
    color: #62B0B4;
    background-color: #fdfdfd;
}


/* main  ------------------------------*/

{
    padding: 1rem 0
;
    background-color: #f5f5f5
;
}

.inner {
    padding: 1rem;
}

/* Link  ------------------------------*/
a {
    color: var(--color-hyper-link);
    text-decoration: none;
}

a:hover {
    color: var(--color-hyper-link-hover);
    text-decoration: underline;
}

/* Button  ------------------------------*/

.btn {
    display: inline-block;
    white-space: nowrap;
    font-size: 0.9rem;
    text-decoration: none;
    color: #FFF;
    background: #8ECBCC;
    padding: 0.5rem 1rem;
    border: 1px solid #e1e1e1;
}

.btn {
    display: inline-block;
    white-space: nowrap;
    font-size: 0.9rem;
    text-decoration: none;
    color: #FFF;
    background: #8ECBCC;
    padding: 0.5rem 1rem;
    border: 1px solid #e1e1e1;
    border-radius: 0;
}

.btn:hover {
    color: #fff;
}

.btn.small {
    font-size: 0.8rem;
    line-height: 0.8rem;
    padding: 5px 10px;
}

.btn.blue {
    color: #FFF;
    background-color: #8ECBCC;
}

.btn.orange {
    color: #888888;
    background-color: #FFEC50;
}

.btn.green {
    color: #FFF;
    background-color: #77bc01;
}

.btn.red {
    color: #FFF;
    background-color: #C00;
}

.b_submit input.gray,
.btn.gray {
    color: #000;
    background-color: #EEE;
    cursor: pointer;
    -webkit-transition: all 0.07s linear;
    -o-transition: all 0.07s linear;
    transition: all 0.07s linear;
}

.b_submit input.gray:hover,
.btn.gray:hover {
    background-color: #e3e3e3;
}


.btn.border {
    color: #8ECBCC;
    background: #FFF;
    border-color: #8ECBCC;
}

.btn.border.orange {
    color: #FFEC50;
    border-color: #FFEC50;
}

.btn.border.green {
    color: #77bc01;
    border-color: #77bc01;
}

.btn.border.red {
    color: #C00;
    border-color: #C00;
}

.btn.border.red {
    color: #000;
    border-color: #EEE;
}


input[type="submit"]:hover,
input[type="button"]:hover {
    cursor: pointer;
}


/* Footer  ------------------------------*/
#footer {
    font-size: 0.9rem;
    padding: 2rem 0;
    background-color: #888888;
    color: #FFF;
}

#footer a {
    color: #FFF;
}

#footer .inner {
    width: 1050px;
    margin: 0 auto;
    padding: 0;
    text-align: left;
}

#footer dl {
    float: left;
    margin-right: 140px;
}

#footer dl:last-child {
    float: right;
    margin-right: 0;

}

#footer dt {
    padding: 0.3rem 0;
    border-bottom: 1px solid #4D4D4D;
    font-weight: bold;
}

#footer dd {
    padding: 0;
    padding-right: 30px;
}

#footer dd li {
    font-size: 0.8rem;
}


#footer dd li a {
    display: block;
    padding: 0.4rem 0;
}

#footer dl:last-child li a {


}

#footer .t {
    background: url(../images/footer/i_f_twitter.png) left center no-repeat;
}

#footer .f {
    background: url(../images/footer/i_f_facebook.png) left center no-repeat;
}

#footer .y {
    background: url(../images/footer/i_f_youtube.png) left center no-repeat;
}

#footer .sns {
    float: right;
    margin-top: -1rem;
}

#footer .sns li {
    float: left;
    padding-left: 1rem;
}

#footer .snavi {
    margin: 1rem 0;
}

#footer .snavi li {
    font-size: 0.7rem;
    float: left;
    border-left: 2px #b8b8b8 solid;
}

#footer .snavi li:last-child {
    border-right: 2px #b8b8b8 solid;
}

#footer .snavi li a {
    display: block;
    padding: 0 1rem;
}

#considerations {
    font-size: 0.7rem;
    margin-bottom: 1rem;
}

#copyright {
    font-size: 0.7rem;
}

#footer hr {
    display: block;
    border: none;
    height: 1px;
    background: #4D4D4D;

}

#footer a:link,
#footer a:visited,
#footer a:active {
    text-decoration: none;
}

#footer a:hover {
    text-decoration: underline;
}

#pagetop {
    font-size: 0.5em;
    line-height: 1em;
    position: fixed;
    bottom: 10px;
    right: 10px;
    color: #FFF;
    padding: 1em;
    text-decoration: none;
    background-color: rgba(0, 0, 0, 0.25);
    border-radius: 1.5em;
    -webkit-border-radius: 1.5em;
    -moz-border-radius: 1.5em;
}

#pagetop:hover {
    background-color: rgba(0, 0, 0, 0.5);
}

#footer {
    text-align: left;
}

#footer a#collapseHeaderService,
#footer a#collapseHeaderNotice,
#footer a#collapseHeaderSupport,
#footer a#collapseHeaderCompany {
    display: block;
}

#footer a#collapseHeaderService:hover,
#footer a#collapseHeaderNotice:hover,
#footer a#collapseHeaderSupport:hover,
#footer a#collapseHeaderCompany:hover {
    text-decoration: none;
}

#footer div.toggle-icon {
    align-self: center;
}

#footer .toggle-icon {
    position: absolute;
    right: 0.4em;
}

#footer a[aria-expanded=true] .toggle-icon::before {
    content: "";
    outline: none;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
}

#footer a[aria-expanded=false] .toggle-icon::before {
    content: "";
    outline: none;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
}

#footer ul.sns {
    display: flex;
    margin-left: auto;
    list-style: none;
}

#footer ul.sns li {
    font-size: 2em;
    width: 1.5em;
}

#footer div.border-top {
    border-top: 1px solid white;
}

#footer div.border-bottom {
    border-bottom: 1px solid white;
}

@media (min-width: 768px) {
    #footer a#collapseHeaderService,
    #footer a#collapseHeaderNotice,
    #footer a#collapseHeaderSupport,
    #footer a#collapseHeaderCompany {
        text-decoration: none;
        cursor: default;
    }

    #footer div.border-bottom {
        border-bottom: 0px !important;
    }

    #footer ul.snavi li {
        display: inline;
        border-left: 2px #b8b8b8 solid;
    }

    #footer ul.snavi li:last-child {
        border-right: 2px #b8b8b8 solid;
    }
}

/* Side  ------------------------------*/
#side {
    float: right;
}

#side dl {
    margin-bottom: 2rem;
}

#side dt {
    color: #0A3C41;
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
    border-bottom: 1px solid #e1e1e1;
}

#side dd {
    font-size: 0.9rem;
    font-weight: normal;
}

#side .item a {
    color: #000;
}

.item a:hover,
#side .item a:hover {
    text-decoration: none;
}

#side li a {
    color: #000;
    display: block;
    text-decoration: none;
    padding: 0.2rem 0;
}

#side li a:hover {
    text-decoration: underline;
}

#side img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

#side dl.item {
    width: 100%;
    padding: 0;
    margin-right: 0;
}

#side dl.item dt {
    padding: 0;
}

#side a .item {
    color: #000;
}


/* Form  ------------------------------*/
form small {
    line-height: 1rem;
}

form label {
    margin-right: 1rem;
}

form label input {
    margin: 0 0.5rem;
}

form label.block {
    display: block;
    margin: 0 0 5px 0;
    padding: 1rem 0.5rem;
    border: 1px solid #EEE;
}

form.inline-block {
    display: inline-block;
}

form select,
form input[type="text"],
form input[type="password"],
form textarea {
    background-color: #fcfcfc;
    border: 1px solid #ccc;
    padding: 0.5rem;
    margin: 0 0.5rem;
}

form .sizeAuto {
    width: 100%;
}

form .sizeLL {
    width: 32rem;
    height: 6rem;
}

form .sizeL {
    width: 23rem;
}

form .sizeM {
    width: 14rem;
}

form .sizeS {
    width: 4rem;
}

form select.sizeL {
    width: 23.5rem;
}

form select.sizeM {
    width: 14.5rem;
}

form select.sizeS {
    width: 4.5rem;
}


.b_submit {
    text-align: center;
    padding: 1rem 0;
}

.b_submit input {
    padding: 0.5rem 1rem;
    color: #888888;
    line-height: 1rem;
    background: #FFEC50;
    border: 1px solid #e1e1e1;
    border-radius: 3px !important;
    -webkit-transition: all 0.07s linear;
    -o-transition: all 0.07s linear;
    transition: all 0.07s linear;
    border-radius: 3px !important;
}

.b_submit input:hover {
    background-color: rgba(255, 236, 80, 0.8);
}

.b_submit.nobackground input {
    padding: 0.5rem 1rem;
    color: #ffffff;
    line-height: 1rem;
    background: none;
    border: 1px solid #e1e1e1;
    border-color: #8ECBCC;
}


.b_submit .btn {
    display: inline-block;
    font-size: 1rem;
    line-height: 1rem;
    padding: 0.5rem 1rem;
}

select.large,
.btn.large {
    font-size: 1rem;
    line-height: 1rem;
    padding: 0.5rem 1rem;
}

.overflow {
    width: 100%;
    height: 215px;
    overflow: auto;
    /*//	padding: 2rem 0;*/
    border-top: 2px solid #EEE;
    border-left: 2px solid #EEE;
    border-bottom: 2px solid #EEE;
}

.agree {
    text-align: center;
    font-weight: bold;
    padding: 2rem 0;
    background-color: #f5f5f5;
}


/* AreaSearch  ------------------------------*/
.area_search a {
    color: #000;
}

.area_search {
    font-size: 0.9rem;
    background-color: #f5f5f5;
    margin-bottom: 1rem;
}

.area_search dt {
    float: left;
}

.area_search dt span {
    display: block;
    color: #FFF;
    font-size: 0.7rem;
    padding: 0.3rem 0.5rem;
    margin: 0.5rem 0.5rem 0 0.5rem;
    background-color: #cfcfcf;
}

.area_search dd {
    padding: 0.5rem;
}

.area_search li {
    float: left;
    margin-left: 1rem;
}

.area_search li a {
    display: block;
    padding: 0.2rem 0;
    text-decoration: none;
    background: url(../images/i_area_search_bg.gif) bottom left repeat-x;
}


/* NEWS  ------------------------------*/

div.news {
    margin: 1rem 0;
    font-size: 0.9rem;
}

.news dl {
    float: left;
    width: 338px;
    margin: 0 17px 10px 0;
}

.news dl:nth-of-type(3n) {
    margin-right: 0;
}

.news dt {
    /*border-top:2px solid #CCC;*/
    padding: 0.5rem 0;
}

.news dt span.t {
    display: inline-block;
    font-size: 0.8rem;
    padding: 0.2rem 0.5rem;
}


.news .red dt {
    border-color: #F00;
    color: #F00;
}

.news .blue dt {
    border-color: #0068b7;
    color: #0068b7;
}

.news .green dt {
    border-color: #77bc01;
    color: #77bc01;
}

.news .orange dt {
    border-color: #ff6e0c;
    color: #ff6e0c;
}

.news .brown dt {
    border-color: #ae7439;
    color: #ae7439;
}

.news .purple dt {
    border-color: #6633cc;
    color: #6633cc;
}

/*
.news .red dt span.t{ background-color:#FCC; }
.news .blue dt span.t{ background-color:#cce1f1; }
.news .green dt span.t{ background-color:#e4f2d8; }
.news .orange dt span.t{ background-color:#fce8d1; }
.news .brown dt span.t{ background-color:#e4d1be; }
.news .purple dt span.t{ background-color:#e0d6f5; }
*/
.news dd a {
    color: #000;
    text-decoration: none;
    display: block;
    line-height: 1.2rem;
    /*padding: 0.5rem 0;*/
}

.news dd a span {
    padding-left: 0.5rem;
}

.news dd a img {
    float: left;
    margin: 0 0.5rem 0 0;
    height: 40px;
    width: auto;
}


/* BOX  ------------------------------*/
div.border {
    padding: 1rem;
    margin: 1rem 0;
    border: 1px solid #e7e7e7;
}

div.dashed {
    padding: 1rem;
    margin: 1rem 0;
    border: 1px dashed #CDCDCD;
}


div.border p:last-child {
    margin-bottom: 0;
}

div.border.blue {
    border-color: #0080d4;
}

div.border.orange {
    border-color: #FFEC50;
}

div.border.green {
    border-color: #77bc01;
}

div.border.red {
    border-color: #C00;
}

div.border p:last-child,
div.border ul:last-child,
div.border ol:last-child {
    margin-bottom: 0;
}

/* Table  ------------------------------*/
table {
    width: 100%;
    margin-bottom: 1rem;
}

table.margin_bottom_3 {
    margin-bottom: 3rem;
}

thead {
    background-color: #f5f5f5;
    border-top: 1px solid #eaeaea;
    border-bottom: 1px solid #eaeaea;
}

thead th {
    font-weight: bold;
}

tbody {
    border-bottom: 1px solid #eaeaea;
}

tbody th,
tbody td {
    /*vertical-align:top;*/
    border-top: 1px dotted #eaeaea;
}

th, td {
    font-size: 0.9rem;
    padding: 0.3rem 1rem;
}

th.bg,
td.bg {
    background-color: #f5f5f5;
}

.total tbody tr:last-child th,
.total tbody tr:last-child td {
    font-weight: bold;
    border-top: 1px solid #e1e1e1;
}


td p {
    margin-bottom: 0.5rem;
}

td p:last-child,
td ul:last-child {
    margin-bottom: 0;
}

form th,
form td {
    padding: 0.5rem 1rem;
    border: 1px solid #ddd;
}

form th,
form th.bg {
    font-weight: bold;
    color: #333;
    background-color: #fafafa;
}

form th small {
    font-weight: normal;
}

/*
form tr > th:FIRST-CHILD{
	background-color:#fafafa; 
}
*/


form td {
    padding: 0.5rem;
}


/* Font  ------------------------------*/
h2,
h3,
h4 {
    clear: both;
    margin-bottom: 1rem;
    color: #62B0B4;
}

h2 {
    font-size: 1.5rem;
    padding-bottom: 10px;
    border-bottom: 1px solid #eaeaea;
}

h2 em {
    padding: 0 1rem 4px 1rem;
    border-bottom: 2px solid #888888;
    font-weight: 900;
}

h3 {
    font-size: 1.2rem;
    margin: 1rem 0;
    color: #62B0B4;
}

h4 {
    font-size: 1.1rem;
    margin: 0.5rem 0;
}

.small {
    font-size: 0.8rem;
    line-height: 1.3rem;
}

.big {
    font-size: 1.1rem;
}

.bold {
    font-weight: bold;
}

/* Color  ------------------------------*/

.red {
    color: #C00;
}

.blue {
    color: #0080d4;
}

.green {
    color: #78bc02;
}

.orange {
    color: #ff6e0c;
}

.brown {
    color: #ae7439;
}

.purple {
    color: #6633cc;
}


@-webkit-keyframes pulse {
    from {
        opacity: 1.0;
    }
    to {
        opacity: 0.75;
    }
}

.success_msg{
	text-align: center;
	font-size: 0.8rem;
	color: #000;
	margin: 0.5rem;
	padding: 0.2rem 1rem;
	/* -webkit-animation-name: pulse;
	-webkit-animation-duration: 0.5s;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-timing-function: ease-in-out;
	-webkit-animation-direction: alternate;
	-webkit-animation-delay: 0s; */
}

.error_msg {
    text-align: center;
    font-size: 0.8rem;
    color: #FFF;
    background-color: #C00;
    margin: 0.5rem;
    padding: 0.2rem 1rem;

    -webkit-animation-name: pulse;
    -webkit-animation-duration: 0.5s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-direction: alternate;
    -webkit-animation-delay: 0s;
}

/* Align  ------------------------------*/
.left {
    text-align: left;
}

.center {
    text-align: center;
}

.right {
    text-align: right;
}

.right-button {
    text-align: right;
    margin-right: 80px;
}

.fleft {
    float: left;
}

.fright {
    float: right;
}


/* DL Accordion  ------------------------------*/
.accordion > dt {
    cursor: pointer;
    position: relative;
    padding: 1rem 0rem 1rem 0rem;
    border-top: 2px solid #fbfbfb;
    border-bottom: 1px solid #e1e1e1;
    background: url(/images/i_accordion_dt_down.png) right center no-repeat;
}

.accordion > dt.open {
    background-image: url(/images/i_accordion_dt_up.png);

}


.accordion > dt small {
    float: right;
    margin-left: 2em;
}

.accordion > dd {
    padding: 1rem;
    display: none;
}

.accordion > dt:hover {
    background-color: #fafafa;
}


.accordion.gray > dt {
    padding: 0.5rem 1rem;
    background: #f5f5f5 url(/images/i_accordion_dt_down.png) right center no-repeat;
}

.accordion.open > dt {
    background-image: url(/images/i_accordion_dt_up.png);
}

.accordion.open > dd {
    display: block;
}

/* Ul  ------------------------------*/
ul.disc {
    margin-left: 2rem;
    list-style: disc outside;
}

ul.disc li {
    margin-bottom: 0.25rem;
}

ul.attention {
    margin-left: 1em;
    margin-bottom: 1rem;
}

ul.attention li {
    text-indent: -1em;
    margin-bottom: 0.1rem;
}


ul.mark_blue li {
    padding-left: 1rem;
    margin-bottom: 0.5rem;
    background: url(../images/li_bg.gif) left 0.5em no-repeat;
}

ol.decimal {
    margin: 0 0 1rem 2rem;
    list-style: decimal outside;
}

ol.decimal li {
    margin-bottom: 0.5rem;
}

ol.decimal .decimal {
    margin-top: 0.5rem;
}


/* Pagelink  ------------------------------*/

.pagelink {
    margin: 1rem 0;
    font-size: 0.9rem;
}

#fundSearchResults > .pagelink:nth-of-type(1) {
    margin-top: -1rem;
}

.pagelink a {
    color: #000 !important;
    display: inline-block;
    padding: 0.1em 0.5rem;
    text-align: center;
    text-decoration: none;
}

.pagelink a.on {
    color: #888888 !important;
    background-color: #FFEC50;
}


/* Label  ------------------------------*/
.label {
    display: inline-block;
    font-size: 0.7rem;
    line-height: 1rem;
    padding: 0.1rem 0.5rem 0.1rem 0.5rem;
    border: 1px solid #e0e2e1;
    vertical-align: middle;
}

.label.blue {
    background-color: #8ECBCC;
    color: #FFF;
}

.label.green {
    background-color: #78bc02;
    color: #FFF;
}

.label.orange {
    background-color: #EA5514;
    color: #FFF;
}

.label.red {
    background-color: #FF0000;
    color: #FFF;
}

.label.brown {
    background-color: #ae7439;
    color: #FFF;
}

.label.purple {
    background-color: #6633cc;
    color: #FFF;
}

.label-red {
	background-color: #C00;
	color: #FFF;
	font-size: 85%;
	padding-top: 3px;
	padding-right: 5px;
	padding-bottom: 2px;
	padding-left: 5px;
}

hr {
    display: block;
    margin: 1rem 0;
    height: 1px;
    background: #EEE;
    border: none;
    clear: both;
}

.label.date {
    padding: 0;
    border: none;
    margin-bottom: 0.3rem;
    margin-top: 0.5rem;
    color: #999999;
}

.label.category {
    background-color: #FFEC50;
    color: #888888;
    border-top-style: none;
    border-right-style: none;
    border-bottom-style: none;
    border-left-style: none;
}

.label.cat {
    padding: 0;
    border: none;
    margin-right: 0.5rem;
}

iframe.iform {
    min-height: 400px;
    width: 100%;
    height: auto;
    margin: 1em 0;
    border: 1px solid #CCC;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}


.photo .fundimg,
.photo .ecimg {
    min-height: 270px;
    background: url(../images/fundimg_bg.png) center center no-repeat;
}

.item > dt.noimg {
    background: #CCC url(../images/fundimg_bg.png) center center no-repeat;
}

.col3 .item > dt.noimg {
    /*
    background-color:#77bc01;
    */
    height: 164px;
}


/* Status  ------------------------------*/
/*
2 => '受付中',
3 => '受付終了',
4 => '運用中',
15 => '運用終了'
5 => '償還済'
*/
.status {
    position: absolute;
    display: inline-block;
    font-size: 10px;
    white-space: nowrap;
    line-height: 1em;
    padding: 0.5em 1em;
    vertical-align: middle;
/ / margin: 0.2 rem 0 0 0.2 rem;;
    float: right;
    /*
    font-family: "游明朝", "YuMincho", serif;
    */
}

.status.type2 {
    background-color: #0A3C41;
    color: #FFF;
}

.status.type3 {
    background-color: #EA5514;
    color: #FFF;
}

.status.type4 {
    background-color: #78bc02;
    color: #FFF;
}

.status.type15 {
    background-color: #6633cc;
    color: #FFF;
}

.status.type5 {
    background-color: #666;
    color: #FFF;
}

.status.type1 {
    background-color: #6633cc;
    color: #FFF;
}

/* Badge  ------------------------------*/
/*
1 => '新着',
2 => '人気',
3 => '締切間近',
4 => '売切間近'
*/
.badge_area {
    position: absolute;
    top: 0;
    left: 0;
    width: 65px;
    height: 65px;
    overflow: hidden;
    z-index: 10;
}

.badge {
    display: inline-block;
    position: absolute;
    left: -58px;
    top: 10px;
    width: 160px;
    text-align: center;
    font-size: 12px;
    line-height: 18px;
    background: #39c3d4;
    color: #fff;
    letter-spacing: 0.05em;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    padding-top: 3px;
    padding-right: 0;
    padding-bottom: 2px;
    padding-left: 0;
}

.badge.type1 {
    background-color: #0A3C41;
    color: #FFF;
}

.badge.type2 {
    background-color: #6633cc;
    color: #FFF;
}

.badge.type3 {
    background-color: #78bc02;
    color: #FFF;
}

.badge.type4 {
    background-color: #EA5514;
    color: #FFF;
}

.badge.type5 {
    background-color: #FFEC50;
    color: #888;
}

/**
	SNSアイコン類
 */
 div.sns {
	display: flex!important;
	vertical-align: top!important;
	justify-content: flex-end;
}

.fb-like > span {
	vertical-align: baseline !important;
	width: 160px !important;
}
.fb-like iframe {
	width: 160px !important;
}


/*新しいボタン*/
.btn-new-xsmall {
    font-size: 0.8rem;
    text-decoration: none;
    padding-top: 0.1rem;
    padding-bottom: 0.1rem;
    padding-right: 0.3rem;
    padding-left: 0.3rem;
    border-radius: 3px !important;
    cursor: pointer;
    font-weight: bold;
    text-align: center;
    display: inline-flex;
}

.btn-new-xsmall.red {
    color: #FFF !important;
    background-color: #C00;
    border: 1px solid #C00;
}

.btn-new-xsmall.block {
    text-align: center;
    display: block;
}

.btn-new-xsmall.inline {
    display: inline-table;
    text-align: center;
}

.btn-new-xsmall.w100 {
    width: 100%;
}

.btn-new-xsmall.shadow {
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.1), 0 1px 1px -2px rgba(0, 0, 0, 0.14); /*影*/
    transition: .3s ease-out;
}

.btn-new-xsmall.shadow:hover {
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.08), 0 1px 7px 0 rgba(0, 0, 0, 0.1), 0 1px 1px -1px rgba(0, 0, 0, 0.14); /*浮き上がるように*/
}

.btn-new-xsmall.border {
    color: #62B0B4 !important;
    background-color: #FFF;
    border: 1px solid #62B0B4;
}

.btn-new-xsmall.border:hover {
    background-color: rgba(98, 176, 180, 0.2);
}

.btn-new-xsmall.flat {
    color: #62B0B4;
}

.btn-new-xsmall.flat:hover {
    color: #62B0B4;
    background-color: rgba(98, 176, 180, 0.2);
}

.btn-new-xsmall.text {
    color: #fff;
    text-align: left;
}

.btn-new-xsmall.text:hover {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.2);
}

.btn-new-xsmall.orange {
    color: #888888 !important;
    background-color: #FFEC50;
    border: 1px solid #FFEC50;
}

.btn-new-xsmall.orange:hover {
    background-color: rgba(255, 236, 80, 0.8);
    border-color: rgba(255, 236, 80, 0.8);
}

.btn-new-xsmall.blue {
    color: #FFF !important;
    background-color: #8ECBCC;
    border: 1px solid #8ECBCC;
}

.btn-new-xsmall.blue:hover {
    background-color: rgba(142, 203, 204, 0.8);
    border-color: rgba(142, 203, 204, 0.8);
}


.btn-new-small {
    font-size: 0.9rem;
    text-decoration: none;
    padding: 0.4rem;
    border-radius: 3px !important;
    cursor: pointer;
    font-weight: bold;
    text-align: center;
    display: inline-flex;
}

.btn-new-small.red {
    color: #FFF !important;
    background-color: #C00;
    border: 1px solid #C00;
}

.btn-new-small.block {
    text-align: center;
    display: block;
}

.btn-new-small.inline {
    display: inline-table;
    text-align: center;
}

.btn-new-small.w100 {
    width: 100%;
}

.btn-new-small.shadow {
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.1), 0 1px 1px -2px rgba(0, 0, 0, 0.14); /*影*/
    transition: .3s ease-out;
}

.btn-new-small.shadow:hover {
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.08), 0 1px 7px 0 rgba(0, 0, 0, 0.1), 0 1px 1px -1px rgba(0, 0, 0, 0.14); /*浮き上がるように*/
}

.btn-new-small.border {
    color: #62B0B4 !important;
    background-color: #FFF;
    border: 1px solid #62B0B4;
}

.btn-new-small.border:hover {
    background-color: rgba(98, 176, 180, 0.2);
}

.btn-new-small.flat {
    color: #62B0B4;
}

.btn-new-small.flat:hover {
    color: #62B0B4;
    background-color: rgba(98, 176, 180, 0.2);
}

.btn-new-small.text {
    color: #fff;
    text-align: left;
}

.btn-new-small.text:hover {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.2);
}

.btn-new-small.orange {
    color: #888888 !important;
    background-color: #FFEC50;
    border: 1px solid #FFEC50;
}

.btn-new-small.orange:hover {
    background-color: rgba(255, 236, 80, 0.8);
    border-color: rgba(255, 236, 80, 0.8);
}

.btn-new-small.blue {
    color: #FFF !important;
    background-color: #8ECBCC;
    border: 1px solid #8ECBCC;
}

.btn-new-small.blue:hover {
    background-color: rgba(142, 203, 204, 0.8);
    border-color: rgba(142, 203, 204, 0.8);
}

.btn-new {
    font-size: 0.9rem;
    text-decoration: none;
    padding: 0.5rem 0.8rem;
    border-radius: 3px !important;
    cursor: pointer;
    font-weight: bold;
    text-align: center;
    display: inline-flex;
}

.btn-new.red {
    color: #FFF !important;
    background-color: #C00;
    border: 1px solid #C00;
}

.btn-new.block {
    text-align: center;
    display: block;
}

.btn-new.inline {
    display: inline-table;
    text-align: center;
}

.btn-new.w100 {
    width: 100%;
}

.btn-new.shadow {
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.1), 0 1px 1px -2px rgba(0, 0, 0, 0.14); /*影*/
    transition: .3s ease-out;
}

.btn-new.shadow:hover {
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.08), 0 1px 7px 0 rgba(0, 0, 0, 0.1), 0 1px 1px -1px rgba(0, 0, 0, 0.14); /*浮き上がるように*/
}

.btn-new.border {
    color: #62B0B4 !important;
    background-color: #FFF;
    border: 1px solid #62B0B4;
}

.btn-new.border:hover {
    background-color: rgba(98, 176, 180, 0.2);
}

.btn-new.flat {
    color: #62B0B4;
}

.btn-new.flat:hover {
    color: #62B0B4;
    background-color: rgba(98, 176, 180, 0.2);
}

.btn-new.text {
    color: #fff;
    text-align: left;
}

.btn-new.text:hover {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.2);
}

.btn-new.orange {
    color: #888888 !important;
    background-color: #FFEC50;
    border: 1px solid #FFEC50;
}

.btn-new.orange:hover {
    background-color: rgba(255, 236, 80, 0.8);
    border-color: rgba(255, 236, 80, 0.8);
}

.btn-new.blue {
    color: #FFF !important;
    background-color: #8ECBCC;
    border: 1px solid #8ECBCC;
}

.btn-new.blue:hover {
    background-color: rgba(142, 203, 204, 0.8);
    border-color: rgba(142, 203, 204, 0.8);
}


/* Ripple  ------------------------------*/
.ripple {
    position: relative;
    overflow: hidden;
}

.ripple .rp-effect { /*エフェクト*/
    position: absolute;
    border-radius: 50%;
    opacity: 0.35; /*波紋の濃さ*/
    transform: scale(0);
    background: #FFF; /*波紋色*/
    animation: ripple 700ms;
    pointer-events: none;
}

@-webkit-keyframes ripple {
    to {
        opacity: 0;
        transform: scale(2.0);
    }
}

@keyframes ripple {
    to {
        opacity: 0;
        transform: scale(2.0);
    }
}

.owner {
}

.gray {
    color: #999999;
}

.black {
    color: #000000;
}

.white {
    color: #ffffff;
}

.bg_gray {
    background-color: #f5f5f5;
}

.bg_white {
    background-color: #ffffff;
}

.bg_blue {
    background-color: #01B7AB;
}

.content-wrap {
    margin: 0 auto;
}

div.header-title {
	padding: 10vh 0;
}

.catchcopy {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.margin-t0 {
    margin-top: 0;
}

.margin-t10 {
    margin-top: 1rem;
}

.margin-b0 {
    margin-bottom: 0;
}

.margin-b20 {
    margin-bottom: 2rem;
}

.padding-t20 {
    padding-top: 2rem;
}

.padding-b20 {
    padding-bottom: 2rem;
}

.margin-r20 {
    margin-right: 2rem;
}

.fw_normal {
    font-weight: normal;
}

/**
 TOP
 */
.tile-project {
    color: #000000;
    background-color: #ffffff;
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, .25));
}

.tile-project:hover {
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, .45));
}

.tile-project img {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 16/9;
}

.tile-project:hover img {
    filter: brightness(105%);
}

.tile-project a {
    color: #000000;
}

.tile-project a:hover {
    color: #000000;
    text-decoration: none;
}

.tile-project .tile-img,
.tile-project .tile-content {
}

.tile-project .tile-img {
    flex: 0 0 100%;
    max-width: 100%;
    position: relative;
}

.tile-project .tile-content {
    flex: 0 0 100%;
    max-width: 100%;
}

.tile-img img {
    display: flex;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.banner-tile {
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, .25));
}

.banner-tile:hover {
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, .45));
}

.banner-tile:hover img {
    filter: brightness(105%);
}

@media (min-width: 768px) {
    .tile-project .tile-img {
        flex: 0 0 40%;
        max-width: 40%;
        position: relative;
    }

    .tile-project .tile-content {
        flex: 0 0 60%;
        max-width: 60%;
    }

    .tile-img img {
        width: auto;
    }

    .tile-content .overflow-hidden {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

@media (min-width: 991px) {
    .tile-project .tile-img {
        flex: 0 0 30%;
        max-width: 30%;
        position: relative;
    }

    .tile-project .tile-content {
        flex: 0 0 70%;
        max-width: 70%;
    }
}

.tile-project div#title {
    font-size: 15px;
    height: 45px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    word-break: break-all;
    -webkit-line-clamp: 2;
}

.tile-project div.summary-title {
    font-size: 0.7em;
}

.tile-project div.summary-val {
    font-size: 0.8em;
}

@media (min-width: 768px) {
    .tile-project div.summary-title {
        font-size: 0.9em;
    }

    .tile-project div.summary-val {
        font-size: 1.0em;
    }
}

.g,
.g span {
    height: 17px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    background-color: #bbb;
    overflow: hidden;
}

.g span {
    display: block;
    background-color: #01B7AB;
}

.text-overflow-hidden {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}