@charset "utf-8";

body {
    font-family: "Yu Gothic", "メイリオ", "Lucida Grande", "YuGothic", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Geneva, Arial, Verdana, sans-serif;
    font-size: 38px;
    color: #000;
    line-height: 1.4;
    text-align: center;
}

* {
    margin: 0;
    padding: 0;
}

body,
div,
p,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
blockquote,
table,
tr,
td {
    margin: 0;
    padding: 0;
}

img {
    vertical-align: top;
    margin: 0;
    padding: 0;
    border: none;
}

hr {
    display: none;
}

a img {
    border: none;
}

a:hover img {
    opacity: 0.7;
}

a {
    color: #00b8ee;
    text-decoration: none;
}

a:hover {
    color: #00b8ee;
    text-decoration: underline;
}

a:visited {
    color: #00b8ee;
    text-decoration: underline;
}

.fcl:after,
.row:after {
    content: " ";
    height: 0;
    display: block;
    clear: both;
    visibility: hidden;
}

.align_center {
    text-align: center;
}

.align_left {
    text-align: left;
}

.align_right {
    text-align: right;
}

.txt_red {
    color: #c00;
}

.txt_yellow {
    color: #ff0;
}

.txt_orange {
    color: #f60;
}

.txt_white {
    color: #fff;
}

.txt_bold {
    font-weight: bold;
}

.m_top5 {
    margin-top: 5px;
}

.m_top10 {
    margin-top: 10px;
}

.m_top15 {
    margin-top: 15px;
}

.m_top20 {
    margin-top: 20px;
}

.m_top25 {
    margin-top: 25px;
}

.m_top30 {
    margin-top: 30px;
}

.m_top35 {
    margin-top: 35px;
}

.m_top40 {
    margin-top: 40px;
}

.m_top45 {
    margin-top: 45px;
}

.m_top50 {
    margin-top: 50px;
}

.m_top55 {
    margin-top: 55px;
}

.m_top60 {
    margin-top: 60px;
}

.m_bottom5 {
    margin-bottom: 5px;
}

.m_bottom10 {
    margin-bottom: 10px;
}

.m_bottom15 {
    margin-bottom: 15px;
}

.m_bottom20 {
    margin-bottom: 20px;
}

.m_bottom25 {
    margin-bottom: 25px;
}

.m_bottom30 {
    margin-bottom: 30px;
}

.m_bottom35 {
    margin-bottom: 35px;
}

.m_bottom40 {
    margin-bottom: 40px;
}

.m_bottom45 {
    margin-bottom: 45px;
}

.m_bottom50 {
    margin-bottom: 50px;
}

.m_bottom55 {
    margin-bottom: 55px;
}

.m_bottom60 {
    margin-bottom: 60px;
}

.m_left30 {
    margin-left: 30px;
}

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.none {
    display: none;
}

.size_s {
    width: 120px;
}

.size_m {
    width: 180px;
}

.size_l {
    width: 300px;
}

.max_w {
    max-width: 100%;
}

.bg_full {
    width: 100%;
    margin: 0;
}

.bg_header {
    border-bottom: solid 5px #f19149;
    background: #fff;
}

.bg_entry {
    border-bottom: solid 5px #6a3906;
}

.bg_footer {
    padding: 15px 0 20px;
    color: #fff;
    background: #6a3906;
}

.bg_orange {
    background: #f60;
}

.bg_yellow {
    background: #f19149;
}

.bg_red {
    background: #c00;
}

.content_body {
    width: 100%;
    min-height: 10px;
}

.hd {
    font-size: 0px;
    line-height: 0;
}

.wrap {
    text-align: left;
}

h2 {
    text-align: center;
}

.sec_04 ul {
    list-style: disc outside;
    margin: 30px 0 0 1em;
}

.box_category {
    width: 100%;
    min-height: 720px;
    padding-top: 130px;
    font-weight: bold;
}

body.all .box_category {
    background: url(../../img/sp_main_all_img.png) no-repeat top center;
}

body.food .box_category {
    background: url(../../img/sp_main_food_img.png) no-repeat top center;
}

body.beauty .box_category {
    background: url(../../img/sp_main_beauty_img.png) no-repeat top center;
}

body.school .box_category {
    background: url(../../img/sp_main_school_img.png) no-repeat top center;
}

body.seitai .box_category {
    background: url(../../img/sp_main_seitai_img.png) no-repeat top center;
}

body.shika .box_category {
    background: url(../../img/sp_main_shika_img.png) no-repeat top center;
}

body.store .box_category {
    background: url(../../img/sp_main_store_img.png) no-repeat top center;
}

body.office .box_category {
    background: url(../../img/sp_main_office_img.png) no-repeat top center;
}

.line_01 {
    font-size: 56px;
}

.line_02 {
    font-size: 48px;
    color: #c00;
}

h1.line_03 {
    font-size: 64px;
}

.line_05 {
    margin-left: 20px;
    font-size: 54px;
    color: #c00;
}

.line_06 {
    margin-left: 20px;
    font-size: 74px;
    color: #c00;
}

.box_1020 {
    width: 100%;
    margin: 0;
}

.box_category .box_640 {
    width: 580px;
    margin: 0 auto;
    text-align: left;
}

.sec_01 .box_640,
.sec_02 .box_640,
.sec_03 .box_640,
.sec_04 .box_640,
.sec_05 .box_640 {
    width: 100%;
    margin: 0 auto 80px;
}

.sec_05 .box_640 {
    margin: 0 auto;
}

.txt_ss {
    font-size: 0.6em;
}

.txt_s {
    font-size: 0.7em;
}

.txt_m {
    font-size: 1em;
}

.txt_l {
    font-size: 1em;
}

.txt_ll {
    font-size: 1.3em;
}

.txt_3l {
    font-size: 1.9em;
}

.lf:after {
    content: " ";
    display: block;
}

img {
    width: 100%;
}

.sp_hd {
    display: none;
}

.bg_grid {
    background: url(../../img/bg_square.png) repeat;
}

.title_inner {
    padding-top: 100px;
    background: url(../../img/sp_top_title_bg_01.png) no-repeat top center;
    background-size: contain;
}

.border_orange {
    border: solid 5px #f60;
    border-top: none;
    background: #fff;
}

.border_blown {
    width: 100%;
    max-height: 100%;
    padding: 50px 0;
    background: #fff;
}

.border_red {
    background: #fff;
}

.border_yellow {
    border-top: solid 5px #f19149;
    border-bottom: solid 5px #f19149;
    background: #fff;
}

.bg_pink {
    width: 90%;
    max-height: 100%;
    margin-bottom: 50px;
    padding: 30px 5%40px;
    background: #ffefdf;
}

.box_title {
    width: 96%;
    padding: 20px 2%;
    font-weight: bold;
    color: #fff;
    text-align: center;
}

/**/
.bg_entry {
    width: 100%;
    max-height: 100%;
    padding-bottom: 30px;
}

.bg_header {
    text-align: center;
}

.logo img {
    width: 316px;
}

.bg_entry .f_right img {
    width: 90%;
    margin: 0 5%;
}

.sec_01 .f_left {
    width: 100%;
    margin: 0;
}

.sec_01 .contents_body p {
    width: 90%;
    margin: 5px 5% 30px;
}

.sec_03 .contents_lead {
    width: 90%;
    max-height: 100%;
    padding: 50px 5%;
}

.sec_03 .contents_lead .f_left {
    width: 100%;
    max-height: 100%;
}

.sec_03 .contents_lead .f_right img {
    width: 100%;
    margin: 50px 0;
}

.sec_03 .contents_body {
    width: 90%;
    max-height: 100%;
    padding: 50px 5%;
}

.sec_03 .contents_body .f_left,
.sec_03 .contents_body img.pt {
    width: 100%;
    margin-bottom: 50px;
}

.sec_03 .contents_body .f_right {
    width: 100%;
    max-height: 100%;
    margin-bottom: 50px;
    letter-spacing: -0.05em;
}

.sec_03 ul {
    width: 100%;
    clear: both;
    overflow: auto;
    margin-bottom: 50px;
}

.sec_03 li {
    width: 50%;
    float: left;
    margin: 0 0 30px 0;
}

.sec_04 .contents_body {
    width: 90%;
    max-height: 100%;
    padding: 50px 5%;
}

.sec_04 .box_3x {
    width: 100%;
    overflow: auto;
    margin: 0 0 50px 0;
    font-size: 0.8em;
    line-height: 1.6;
}

.sec_04 h3 img,
.sec_04 .f_right {
    width: 45%;
    float: left;
    margin: 0 5% 0 0;
}

.sec_04 .f_right {
    padding-top: 30px;
}

.sec_04 ul {
    font-size: 0.7em;
}

.sec_05 {
    padding-bottom: 50px;
}

.sec_05 .box_2x {
    width: 80%;
    overflow: auto;
    margin: 0 5% 20px 5%;
    padding: 30px 5%;
    border: solid 1px #f93;
    background: #facd89;
}

.sec_05 .f_left {
    width: 20%;
    float: left;
    margin-right: 5%;
}

.sec_05 .f_right {
    width: 75%;
    float: right;
    padding-top: 30px;
    font-weight: bold;
}

.bg_footer .box_1020 {
    width: 90%;
    max-height: 100%;
    padding: 20px 5%;
}

.bg_header .logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.header-btn {
    width: 30%;
    margin: 10px 10px 10px 3em;
}

.header-btn a {
    display: block;
    padding: 5px 15px;
    font-size: 1.5rem;
    color: white;
    border-radius: 0.3em;
    background-color: #c00;
}