fsp@charset "UTF-8";
body {
    font-family: 'NotoSansRegular';
}
div, h2, h3, h4, h5, p, li, dt, dd, th, td {
    word-break: normal;
    word-wrap: break-word;
    font-size: 16px;
    line-height: 1.66;
    color: #0d0803;
}
figure {
    margin: 0;
}
.is-fixed {
    position: fixed;
    top: 0;
}
main {
    display: block;
    position: relative;
    top: inherit;
    margin-top: 10px;
}
@media print, screen and (min-width:768px) {
    main {
        margin-top: 90px;
    }
}
/* ----------------------------------------------------------------header*/
header {
    height: 300px;
    background: url(../img/common_img/pagetitle_bg.jpg) no-repeat center top;
    background-size: cover;
    position: relative;
}
header#top {
    height: calc(100vh - 90px);
    background: url(../img/index_img/bg_mainimage.jpg) no-repeat center top;
    background-size: cover;
    position: relative;
}
#header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    text-align: left;
    position: relative;
    z-index: 100;
}
h1 {
    position: relative;
    margin-right: 10px;
    padding: 5px 0 15px;
    text-align: right;
    font-size: 10px;
    color: #595959;
    z-index: 1;
}
.header_logo {
    width: 60%;
    position: relative;
    margin-left: 10px;
    display: flex;
    align-items: flex-end;
}
.header_logo .logo {
    margin-right: 10px;
}
.header_logo img {
    vertical-align: bottom;
}
.header_contact {
    margin-right: 10px;
    letter-spacing: -0.6pt;
}
.header_right .sp_tel {
    margin-top: 30px;
    margin-right: 60px;
    background: #f4e4c6;
    width: 36px;
    height: 36px;
    padding-top: 2px;
    text-align: center;
    border-radius: 4px;
}
.header_right .sp_tel img {
    margin: 0 auto;
    vertical-align: middle;
}
.header_contact {
    display: none;
    padding: 10px 20px;
    align-items: center;
    background: rgba(255, 255, 255, 0.9);
}
.header_contact dt {
    margin-right: 15px;
    font-family: "NotoSerifMedium";
    font-weight: normal;
    color: #ce5a70;
}
.header_contact dt span {
    display: block;
    font-family: 'NotoSansRegular';
    font-size: 12px;
    color: #6f665d;
}
.header_contact ul {
    display: flex;
}
.header_contact ul li {
    margin: 0 5px;
}
/* sp only if navon */
.navion_bg #header {
    z-index: 999;
}
.navion_bg .header_logo {
    z-index: 100;
}
.navion_bg .menu_btn {
    z-index: 99999;
}
/* sp only if navon then clone */
.navion_bg .head_con_clone {
    margin: 0;
}
.navion_bg .head_con_clone .header_contact {
    display: flex;
    justify-content: space-between;
    margin-right: 0;
    padding: 0;
}
.navion_bg .head_con_clone .header_contact dt {
    margin-right: 0;
    font-size: 13px;
}
.navion_bg .head_con_clone .header_contact dd {
    margin-left: auto;
}
@media print, screen and (min-width:340px) {
    header#top {
        height: calc(100vh - 90px);
    }
}
@media print, screen and (min-width:768px) {
    header {
        height: 500px;
    }
    h1 {
        margin-right: 35px;
        padding: 35px 0 15px;
    }
    .header_logo {
        width: auto;
        top: -25px;
        margin-left: 40px;
    }
    .header_logo .logo {
        margin-right: 25px;
    }
    .header_contact {
        margin-right: 40px;
    }
    .header_right .sp_tel {
        display: none;
    }
    .header_contact {
        display: flex;
    }
}
@media (orientation: landscape) and (max-width: 767px) {
    header#top {
        height: 500px;
        background: url(../img/index_img/bg_mainimage.jpg) no-repeat center top;
        background-size: cover;
    }
}
/*------------------------------------------------------------mainnavi*/
#mainnavi {
    position: fixed;
    top: 0;
    width: 100%;
    display: none;
    z-index: 999;
    box-shadow: 0px 5px 5px 0px rgba(150, 150, 150, 0.1);
}
.navion_bg #mainnavi.navion::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: #fff;
    z-index: -999;
}
#mainnavi .mnav {
    overflow: hidden;
    display: flex;
    align-self: center;
    flex-wrap: wrap;
}
#mainnavi .mnav li {
    margin: 0 15px;
    padding: 25px 0;
    font-size: 18px;
    font-family: madre-script, sans-serif;
    line-height: 1.3;
    color: #846e3a;
    position: relative;
}
#mainnavi .mnav li span {
    display: block;
    font-size: 12px;
    font-family: 'NotoSansRegular';
    color: #2d252d;
}
#mainnavi .mnav li a {
    display: block;
    color: #846e3a;
    text-decoration: none;
}
#mainnavi .mnav li a::after, #mainnavi .mnav li.active a::after {
    position: absolute;
    bottom: -10px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    content: '';
    width: 100%;
    height: 3px;
    background: #b6a47e;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
}
#mainnavi .mnav a:hover::after, #mainnavi .mnav li.active a::after {
    bottom: 3px;
    opacity: 1;
    visibility: visible;
}
/* sp only if navi_on */
#mainnavi.navion {
    text-align: center;
}
#mainnavi.navion .mnav li {
    display: block;
    width: 100%;
    padding: 13px 0;
    line-height: 1.1;
    text-align: center;
}
#mainnavi.navion .mnav li a::after, #mainnavi.navion .mnav li.active a::after {
    width: 50%;
}
/* nav_contact */
.nav_contact {}
.nav_contact dt {
    margin-bottom: 0.1em;
    text-align: left;
    font-family: 'NotoSerifSemiBold';
    color: #422a11;
}
.nav_contact dt span {
    margin-right: 0.3em;
    padding: 0 0.8em;
    line-height: 1;
    background: #e0909f;
    border-radius: 3px;
    font-family: 'NotoSansBold';
    color: #fff;
}
.nav_contact dd ul {
    display: flex;
    align-items: flex-start;
}
.nav_contact dd ul li {
    line-height: 1;
}
.nav_contact li.nav_tel {
    font-size: 28px;
    font-family: 'NotoSansBold';
    color: #422a11;
    position: relative;
}
.nav_contact li.nav_tel img {
    margin-right: 0.2em;
    vertical-align: middle;
}
.nav_contact li.nav_tel a {
    color: #422a11;
}
.nav_contact dd ul li p {
    display: block;
    font-size: 10px;
    font-family: 'NotoSansRegular';
    color: #595959;
    text-align: left;
}
.hotpep_bnr {
    margin-left: 10px;
}
#mainnavi.is-fixed {
    position: fixed;
    top: 0;
}
/* sp only if navon then nav_ contact */
.navion_bg .nav_contact {
    margin: 0 auto;
    padding: 0 10px 20px;
    text-align: center;
}
.navion_bg .nav_contact dt {
    font-size: 13px;
}
.navion_bg .nav_contact ul {
    justify-content: space-between;
}
.navion_bg .nav_contact .nav_tel {
    font-size: 22px;
}
@media print, screen and (min-width:768px) {
    #mainnavi {
        position: absolute;
        top: 100%;
        height: 90px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        background: #fff;
    }
    #mainnavi .mnav {
        margin-left: 30px;
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
    }
    .nav_contact {
        margin-right: 30px;
    }
}
/*-------------------------------------------------HamburgerMenu Icon*/
.menu_btn {
    display: inline-block;
    position: fixed;
    top: 60px;
    margin: auto;
    right: 10px;
    width: 41px;
    height: 41px;
    z-index: 200000;
    border-radius: 3px;
}
.menu_btn:hover {
    cursor: pointer;
}
.menu_btn .hambgr {
    display: inline-block;
    position: absolute;
    margin: auto;
    right: 0px;
    left: 0;
    top: 0;
    bottom: 0;
    width: 35px;
    height: 4px;
    background: #846e3a;
    z-index: 999;
    transition-duration: 0.3s;
}
.menu_btn .hambgr:before {
    content: "";
    display: block;
    margin: -10px auto 0;
    width: 35px;
    height: 4px;
    background: #846e3a;
}
.menu_btn .hambgr:after {
    content: "";
    display: block;
    margin: 16px auto 0;
    width: 35px;
    height: 4px;
    background: #846e3a;
}
.menu_btn .hambgr.hbg_close {
    display: inline-block;
    position: absolute;
    margin: auto;
    right: 0px;
    left: 0;
    top: 0;
    bottom: 0;
    width: 35px;
    height: 4px;
    background: #846e3a;
    z-index: 999;
    transform: rotate(-45deg);
}
.menu_btn .hambgr.hbg_close:before {
    content: "";
    display: block;
    margin: -10px auto 0;
    width: 35px;
    height: 0px;
    background: #846e3a;
}
.menu_btn .hambgr.hbg_close:after {
    content: "";
    display: block;
    margin: 16px auto 0;
    width: 35px;
    height: 4px;
    background: #846e3a;
    transform: rotate(90deg);
    transform-origin: 58% 0;
    transition-duration: 0.3s;
}
@media print, screen and (min-width:992px) {
    .menu_btn {
        display: none;
    }
}
/*------------------------------------------------------------pagetitle*/
#pagetitle {
    height: 300px;
    width: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
#pagetitle .container {
    position: relative;
    height: 300px;
}
#pagetitle h2 {
    position: absolute;
    top: 60%;
    left: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    text-align: left;
    line-height: 1.2;
    font-size: calc(50px * 0.7);
    font-family: madre-script, sans-serif;
    color: #422a11;
    text-shadow: rgba(255, 255, 255, 0.5) 1px 0px 1px, rgba(255, 255, 255, 0.5) -1px 0px 1px, rgba(255, 255, 255, 0.5) 0px -1px 1px, rgba(255, 255, 255, 0.5) -1px 0px 1px, rgba(255, 255, 255, 0.5) 1px 1px 2px, rgba(255, 255, 255, 0.5) -1px 1px 2px, rgba(255, 255, 255, 0.5) 1px -1px 2px, rgba(255, 255, 255, 0.5) -1px -1px 2px, rgba(255, 255, 255, 0.5) 1px 1px 2px, rgba(255, 255, 255, 0.5) -1px 1px 2px, 0 0 6px rgba(255, 255, 255, 0.8);
}
#pagetitle .ti_in_jp {
    display: block;
    color: #2d252d;
    font-family: "NotoSerifSemiBold";
    font-size: calc(24px * 0.8);
}
#pagetitle.salon {
    background: url(../img/salon_img/pagetitle_sp.png) no-repeat center top;
    background-size: cover;
}
#pagetitle.price {
    background: url(../img/price_img/pagetitle_sp.png) no-repeat center top;
    background-size: cover;
}
#pagetitle.school {
    background: url(../img/school_img/pagetitle_sp.png) no-repeat center top;
    background-size: cover;
}
#pagetitle.contact {
    background: url(../img/contact_img/pagetitle_sp.png) no-repeat center top;
    background-size: cover;
}
#pagetitle.blog {
    background: url(../img/blog_img/pagetitle_sp.png) no-repeat center top;
    background-size: cover;
}
@media print, screen and (min-width:768px) {
    #pagetitle {
        height: 500px;
        margin-bottom: 30px;
    }
    #pagetitle .container {
        height: 500px;
    }
    #pagetitle h2 {
        top: 50%;
        left: 0;
        font-size: 50px;
    }
    #pagetitle .ti_in_jp {
        font-size: 24px;
    }
    #pagetitle.salon {
        background: url(../img/salon_img/pagetitle.png) no-repeat center top;
        background-size: cover;
    }
    #pagetitle.price {
        background: url(../img/price_img/pagetitle.png) no-repeat center top;
        background-size: cover;
    }
    #pagetitle.school {
        background: url(../img/school_img/pagetitle.png) no-repeat center top;
        background-size: cover;
    }
    #pagetitle.contact {
        background: url(../img/contact_img/pagetitle.png) no-repeat center top;
        background-size: cover;
    }
    #pagetitle.blog {
        background: url(../img/blog_img/pagetitle.png) no-repeat center top;
        background-size: cover;
    }
}
/*------------------------------------------------------------content*/
#content {
    text-align: left;
}
.section {
    clear: both;
    margin-bottom: 10px;
}
@media print, screen and (min-width:768px) {
    .section {
        margin-bottom: 30px;
    }
}
/*box*/
.box {
    clear: both;
    padding: 40px 0;
}
.bg_lightbrown {
    background: #f4f2ed;
}
.landbox {
    margin-top: -50px;
    padding-top: 50px;
}
@media print, screen and (min-width:768px) {
    .box {
        clear: both;
        padding: 80px 0;
    }
}
/*subnavi*/
p.side_title {
    padding: 3px 0 3px 10px;
    font-size: 14px;
    font-weight: bold;
    border-left: 4px solid #666;
    margin: 5px 0;
}
.subnavi {
    margin-bottom: 10px;
}
.subnavi {
    border-top: 1px dotted #6D6D6D;
}
.subnavi li {
    border-bottom: 1px dotted #6D6D6D;
}
.subnavi li a {
    padding: 10px 0;
    display: block;
}
.subnavi li a:hover {
    text-decoration: underline;
}
@media print, screen and (min-width:768px) {
    .subnavi {
        margin-bottom: 20px;
    }
}
/* ----------------------------------------------------------------footer*/
footer {
    padding-bottom: 60px;
    text-align: left;
    background: #cabd9e;
}
#f_info01.flex_container {
    padding-top: 50px;
    padding-bottom: 30px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.f_info {
    margin-left: 30px;
}
.f_info dt {
    margin-bottom: 10px;
    color: #56321c;
    font-size: 18px;
    font-family: "NotoSerifSemiBold";
}
.f_info dd {
    color: #38281c;
}
.f_info li {
    color: #38281c;
}
.add_attention {
    font-size: 14px;
}
.f_contact_area {
    padding: 25px;
    border-radius: 7px;
    background: #f4f2ec;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.f_contact_area dt {
    margin-right: 18px;
    padding: 0.2em 0.8em 0.25em;
    background: #e0909f;
    font-size: 25px;
    font-family: 'NotoSansBold';
    color: #fff;
    line-height: 1;
    border-radius: 3px;
    letter-spacing: -0.5pt;
}
.f_con_tel_area ul {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
}
.f_con_tel_area li.hpb_bnr {
    margin: 10px auto 8px;
}
.f_contact_ti {
    color: #422a11;
    font-family: "NotoSerifSemiBold";
    font-size: 20px;
    line-height: 1.1;
}
.f_con_notes {
    display: block;
    margin-top: 0.6em;
    color: #595959;
    font-size: 12px;
    font-family: 'NotoSansRegular';
    line-height: 1.1;
}
.in_f_tel {
    font-size: calc(43px * 0.83);
    font-family: 'NotoSansBold';
    letter-spacing: -0.5pt;
    color: #422a11;
    line-height: 1.2;
    text-decoration: none;
}
.in_f_tel img {
    display: inline-block;
    margin-right: 0.2em;
    vertical-align: middle;
}
.f_con_tel_area a {
    text-decoration: none;
}
.f_contact_area .f_contact_ti {
    display: block;
}
.f_con_mail_area ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.f_con_mail_area li {
    margin: 10px auto 0;
    padding-right: 1em;
    width: 175px;
    height: 40px;
    line-height: 40px;
    border-radius: 7px;
    text-align: center;
    box-sizing: border-box;
    font-size: 18px;
    transition: 0.2s;
}
.f_con_mail_area li a {
    color: #fff;
    text-decoration: none;
}
.f_con_mail_area li:hover {
    opacity: 0.7;
}
.f_con_mail_area li img {
    vertical-align: -middle;
}
.in_f_mail {
    background: #b6a47e;
    font-family: 'NotoSansBold';
}
.in_f_line {
    background: #00b900;
    font-family: "NotoSerifSemiBold";
}
.in_f_insta {
    background: #ae5da1;
    font-family: "NotoSerifSemiBold";
}
@media print, screen and (min-width:768px) {
    .f_con_tel_area ul {
        flex-wrap: nowrap;
    }
    .f_con_notes {
        margin-top: 0;
        margin-left: 1em;
        display: inline-block;
    }
    .in_f_tel {
        font-size: 43px;
    }
    .f_con_tel_area li.hpb_bnr {
        margin: 0 auto 8px 15px;
    }
    .f_con_mail_area {
        margin-left: 20px;
        padding-left: 17px;
        background-image: linear-gradient(to bottom, #f8d2de, #f8d2de 2px, transparent 2px, transparent 3px);
        background-size: 2px 4px;
        background-position: left;
        background-repeat: repeat-y;
	width:400px;
    }
    .f_con_mail_area ul {
        flex-wrap: wrap;
    }
    .f_con_mail_area li {
        margin: 10px 8px 0;
    }
}
/* f_navi */
.f_navi {
    margin: 40px auto;
    text-align: center;
}
.f_navi li {
    padding: 0 20px 0 17px;
    display: inline-block;
    font-size: 14px;
    line-height: 1.2;
    border-right: 1px solid #92856e;
}
.f_navi li a {
    color: #38281c;
    text-decoration: none;
}
.f_navi li a:hover {
    color: #846e3a;
}
.f_navi li:last-of-type {
    border-right: 0;
}
small {
    display: block;
    width: 100%;
    margin: 0 auto;
    color: #583c31;
    font-size: 12px;
    text-align: center;
}
/*------------------------------------------------------------Pankuzu*/
/*pankuzu*/
#pankuzu {
    width: 100%;
    clear: both;
    padding: 5px 0 10px;
    background: #f4f2ed;
}
#pankuzu ol {
    list-style: none;
    text-align: right;
}
#pankuzu ol li {
    display: inline-block;
    font-size: 11px;
    padding: 0 7px 0 10px;
    background: url(../img/common_img/icon_pankuzu.gif) no-repeat 0 50%;
}
#pankuzu ol li em {
    font-style: normal;
}
#pankuzu ol li.home {
    padding-left: 0;
    background: none;
}
#pankuzu ol li a:link, #pankuzu ol li a:visited {
    text-decoration: underline;
}
#pankuzu ol li a:hover, #pankuzu ol li a:active {
    text-decoration: underline;
}
/* ----------------------------------------------------------------rayout*/
.center {
    display: block;
    margin: auto;
}
/*------------------------------------------------------------table*/
.sheet_basic {
    width: 100%;
    border-collapse: collapse;
}
.sheet_basic tr th, .sheet_basic tr td {
    border: 1px dotted #6D6D6D;
    padding: 10px;
    text-align: left;
    vertical-align: top;
    display: block;
}
@media print, screen and (min-width:768px) {
    .sheet_basic tr th, .sheet_basic tr td {
        display: table-cell;
    }
}
/*------------------------------------------------------------Decoration*/
/*Line*/
hr.line_01 {
    height: 1px;
    clear: both;
    margin: 20px 0px;
    border-top: 1px dotted #CCC;
    border-right: 0 dotted #CCC;
    border-bottom: 0 dotted #CCC;
    border-left: 0 dotted #CCC;
}
.space_10 {
    height: 10px;
    clear: both;
}
.space_20 {
    height: 20px;
    clear: both;
}
.space_30 {
    height: 30px;
    clear: both;
}
.space_10 hr, .space_20 hr, .space_30 hr {
    display: none;
}
/*------------------------------------------------------------Text*/
/*title*/
.title01, .title02 {
    font-family: madre-script, sans-serif;
    font-weight: 400;
    font-style: normal;
}
.title01 {
    font-size: calc(48px * 0.6);
    font-family: 'NotoSerifRegular';
    color: #aa9873;
    padding: 10px 15px;
    margin-bottom: 10px;
    border-radius: 4px;
}
.title01 span.in_ti01 {
    display: inline-block;
    font-family: madre-script, sans-serif;
    font-weight: normal;
    line-height: 0.75;
    color: rgba(106, 82, 36, 0.5);
    /*透過必須*/
    text-shadow: 1px 1px 1px #fff, 2px 2px 2px #fff/*背景色に合わせる*/
    , 0 0 0 #846626, 0 0 1px #aa9873;
    font-feature-settings: 'palt';
    position: relative;
}
.title01 span.in_ti01::after {
    content: "";
    display: block;
    width: calc(113px * 0.6);
    height: calc(98px * 0.6);
    position: absolute;
    top: calc(-98px * 0.49);
    left: calc(100% - 113px * 0.26);
    background: url(../img/common_img/ti_po_butterfly.png) no-repeat 0 0;
    background-size: auto;
    background-size: calc(113px * 0.6) calc(98px * 0.6);
}
.title01 .ti01_jp_tx {
    display: block;
    font-size: calc(24px * 0.7);
    line-height: 1;
    color: #422a11;
}
@media print, screen and (min-width:768px) {
    .title01 {
        font-size: 48px;
    }
    .title01 span.in_ti01::after {
        content: "";
        display: block;
        width: 113px;
        height: 98px;
        position: absolute;
        top: calc(-98px * 0.81);
        left: calc(100% - 113px * 0.43);
        background: url(../img/common_img/ti_po_butterfly.png) no-repeat 0 0;
        background-size: 113px 98px;
    }
    .title01 .ti01_jp_tx {
        font-size: 24px;
    }
}
.title02 {
    margin: 30px auto 20px;
    font-size: calc(30px * 0.75);
    line-height: 1.3;
    color: #ce5a70;
    font-family: madre-script, 'NotoSerifRegular', sans-serif;
}
@media print, screen and (min-width:768px) {
    .title02 {
        margin: 50px auto 40px;
        font-size: 30px;
    }
}
.title03 {
    font-size: 40px;
    color: #9b8559;
    line-height: 1.1;
}
.title03 span.in_ti03 {
    font-size: 40px;
    font-family: madre-script, sans-serif;
}
.title03 span.ti03_jp_tx {
    display: block;
    font-size: 18px;
    font-family: "NotoSerifMedium";
    color: #807356;
}
.title03 span {
    font-size: 12px;
}
/*inside_title01*/
.inside_title01 {
    font-size: calc(48px * 0.6);
    font-family: 'NotoSerifRegular';
    color: #aa9873;
    padding: 0 15px 10px;
    margin-bottom: 20px;
    margin-top: -20px;
    border-radius: 4px;
}
.inside_title01 span.in_ti01 {
    display: inline-block;
    font-family: madre-script, sans-serif;
    font-weight: normal;
    line-height: 0.75;
    color: rgba(106, 82, 36, 0.5);
    /*透過必須*/
    text-shadow: 1px 1px 1px #fff, 2px 2px 2px #fff/*背景色に合わせる*/
    , 0 0 0 #846626, 0 0 1px #aa9873;
    font-feature-settings: 'palt';
    position: relative;
}
.inside_title01 .ti01_jp_tx {
    display: block;
    font-size: calc(24px * 0.7);
    line-height: 1;
    color: #422a11;
}
@media print, screen and (min-width:768px) {
    .inside_title01 {
        margin-bottom: 40px;
        font-size: 48px;
    }
    .inside_title01 .ti01_jp_tx {
        font-size: 24px;
    }
}
/*inside_title02*/
.inside_title02 {
    font-family: 'NotoSerifRegular';
    color: #d2697c;
    font-size: 18px;
    padding: 30px 0;
    line-height: 140%;
    margin-bottom: 20px;
    background: url(../img/common_img/it02_top.png) no-repeat top center, url(../img/common_img/it02_bottom.png) no-repeat bottom center;
}
@media print, screen and (min-width:768px) {
    .inside_title02 {
        font-size: 26px;
        margin-bottom: 25px;
    }
}
/*inside_title03*/
.inside_title03 {
    font-family: 'NotoSerifRegular';
    color: #9b8454;
    font-size: 16px;
    padding: 7px 20px;
    line-height: 140%;
    margin-bottom: 15px;
    background: #eae4d4;
}
.inside_title03.bg_pink {
    background: #ef879e;
    color: #fff;
}
@media print, screen and (min-width:768px) {
    .inside_title03 {
        padding: 12px 20px;
        font-size: 22px;
        margin-bottom: 20px;
    }
}
/*TextRight*/
.tx_right {
    text-align: right;
}
/*TextLeft*/
.tx_left {
    text-align: left;
}
/*TextCenter*/
.tx_cent {
    text-align: center;
}
/*bold*/
.tx_bold {
    font-style: normal;
    font-weight: bold;
}
/*TextRed*/
.tx_red {
    color: #C33;
}
/*attention*/
.attention {
    font-size: 10px;
    line-height: 130%;
    margin: 5px 0;
}
/*------------------------------------------------------------Float*/
/*FloatLeft*/
.float_left {
    float: left;
}
/*FloatRight*/
.float_right {
    float: right;
}
/*ClearBoth*/
.clearboth {
    clear: both;
}
/*phbox*/
.phbox_right {
    text-align: center;
    margin-bottom: 10px;
}
.phbox_right img {
    max-width: 100%;
    height: auto;
}
.phbox_left {
    text-align: center;
    margin-bottom: 10px;
}
.phbox_left img {
    max-width: 100%;
    height: auto;
}
.ov_hidden {
    overflow: hidden;
}
@media print, screen and (min-width:768px) {
    .phbox_right {
        float: right;
        margin-left: 10px;
        margin-bottom: 20px;
    }
    .phbox_left {
        float: left;
        margin-right: 10px;
        margin-bottom: 20px;
    }
}
/*------------------------------------------------------------Margin*/
/*MarginTop*/
.margin_t05 {
    margin-top: 5px;
}
.margin_t10 {
    margin-top: 10px;
}
.margin_t20 {
    margin-top: 20px;
}
.margin_t30 {
    margin-top: 30px;
}
.margin_t40 {
    margin-top: 40px;
}
.margin_t50 {
    margin-top: 50px;
}
/*MarginBottom*/
.margin_b05 {
    margin-bottom: 5px;
}
.margin_b10 {
    margin-bottom: 10px;
}
.margin_b20 {
    margin-bottom: 20px;
}
.margin_b30 {
    margin-bottom: 30px;
}
.margin_b40 {
    margin-bottom: 40px;
}
.margin_b50 {
    margin-bottom: 50px;
}
/*MarginRight*/
.margin_r05 {
    margin-right: 5px;
}
.margin_r10 {
    margin-right: 10px;
}
.margin_r15 {
    margin-right: 15px;
}
.margin_r20 {
    margin-right: 20px;
}
/*MarginLeft*/
.margin_l05 {
    margin-left: 50px;
}
.margin_l10 {
    margin-left: 10px;
}
.margin_l15 {
    margin-left: 15px;
}
.margin_l20 {
    margin-left: 20px;
}
/*Margin_device*/
.margin-xs-b10 {
    margin-bottom: 10px;
}
@media print, screen and (min-width:768px) {
    .margin-xs-b10 {
        margin-bottom: 0px;
    }
}
/*------------------------------------------------------------ClearFix*/
.clearfix {
    zoom: 1;
}
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}
/*------------------------------------------------------------Hoverimg*/
a:hover img.hoverimg {
    opacity: 0.6;
    filter: alpha(opacity=60);
    -ms-filter: "alpha( opacity=60 )";
}
/*------------------------------------------------------------other*/
/*Pagetop*/
#pagetop {
    position: fixed;
    bottom: 20px;
    right: 0px;
}
.imeoff {
    ime-mode: disabled;
}
.imeactive {
    ime-mode: active;
}
.cts_p {
    margin-bottom: 1em;
    line-height: 1.875;
}
.more_btn {
    display: inline-block;
    margin: 20px auto 0;
    padding: 0.4em 2em;
    font-family: 'NotoSerifRegular';
    border: 3px solid #b6a47e;
    transition: 0.2s;
}
.more_btn a {
    color: #9d8c68;
    text-decoration: none;
}
.more_btn:hover {
    background: #ede7db;
}
.more_btn2 {
    margin: 0 auto 15px;
    padding: 0.6em 0;
    background: #b6a47e;
    font-size: 18px;
    font-family: "NotoSerifSemiBold";
    box-shadow: 0 0 0 4px #b6a47e inset, 0 0 0 5px #e9e4d9 inset;
    transition: 0.2s;
}
.more_btn2 a {
    display: block;
    width: 100%;
    height: auto;
    color: #fff;
    text-decoration: none;
}
.more_btn2:hover {
    opacity: 0.7;
}
.sp_br {
    display: block;
}
@media print, screen and (min-width:768px) {
    .sp_br {
        display: none;
    }
}
