@charset "utf-8";
/* CSS Document */

* {
	margin:0;
	padding:0;
}
html {
	height:100%;
}
body {
	width:100%;
	height:100%;
    font-size: 16px;
    text-align:center;
	color:#333333;
    letter-spacing: 0.08em;
	line-height:1.75;
    font-family:"BIZ UDPGothic","Noto Sans JP", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Verdana, "Lucida Grande", sans-serif;
    overflow-x: hidden;
}
@media screen and (max-width: 750px) {
    body {
        font-size: calc(28 * 100vw / 750);
    }
}
h1,h2,h3,h4,h5,h6,p,ul,ol,dl {
	display:block;
}
/* for IE6　開始 */
* html body {
    font-size: 82%;
}
/* for IE6　終了 */
/* for IE7　開始 */
*:first-child+html body {
    font-size: 82%;
}
/* for IE7　終了 */

a {
	color:#333333;
}
li {
	list-style:none;
}
img {
	border:0;
}

@media (hover: hover) {
    a:hover {
        color: #FF6600;
    }
    a:hover.link-hover img {
        opacity: .7;
    }
}

/* korolevフォント反映用 */
.Korolev-b {
    font-family: korolev, sans-serif;
    font-weight: 700;
    font-style: normal;
}
.Korolev-m {
    font-family: korolev, sans-serif;
    font-weight: 500;
    font-style: normal;
}
.Korolev-cond {
    font-family: korolev-condensed, sans-serif;
    font-weight: 700;
    font-style: normal;
}
/* korolevフォント反映用 */

/* PCのみ表示 */
.-pc_inline {
    display: inline;
}
.-pc_block {
    display: block;
}
.-sp_inline,
.-sp_block {
    display: none;
}

/* SPのみ表示 */
@media screen and (max-width: 750px) {
    .-sp_inline {
        display: inline;
    }
    .-sp_block {
        display: block;
    }
    .-pc_inline,
    .-pc_block {
        display: none;
    }
}


/* -------------------------- PAGE LAYOUT START -------------------------- */

#container,
#container_sub {
    text-align: center;
    /*width:100%;*/
    width: 1200px;
    min-width:100%;
    overflow: hidden;
}
#container {
    overflow: unset;
}
@media screen and (max-width: 750px) {
    #container,
    #container_sub {
        width: 100%;
        overflow: unset;
    }
}


#container #contents {
   /* width:1000px;*/
    width:1200px;    
    text-align: left;
    margin: 0 auto;
    background-size: 100%;
    position: relative;
}
#container_sub #contents {
    width:1200px;
    text-align: left;
    margin: 0 auto;
    background-size: 100%;
    position: relative;
}
/*#container_sub #contents h1 {
    display: block;
    color: #1C2F61;
    font-size: 28px;
    letter-spacing: .15rem;
    margin-bottom: 30px;
    padding: 30px 0 50px 10px;
    border-bottom: 4px solid #1C2F61;
}*/
@media screen and (max-width: 750px) {
    #container #contents {
         width:100%;    
     }
    #container_sub #contents {
        width:100%;
    }
}

/*　MYPAGE MENU START　－－－－－－－－－－　*/
/*#main_menu #my_navi {
    height: 36px;
    display: block;
    position: static;
    border-bottom: 1px solid #D9D9D9;
    text-align: left;
}*/

/*#invoice {
    position: absolute;
    top: 52px;
    left: 490px;
}
#invoice img {
    border-radius: 6px;
}*/
/* 電話表示部分設定 */
/*#h_navi {
    position: absolute;
    top: 48px;
    right: 0;
    height: auto;
    display: flex;    
  }*/
/*.btn_inq {
    position: absolute;
    top: 25px;
    right: 0;
  }*/

/*#mail_box {
    width: 136px;
}
#mail_box p:first-child {
    font-size: 14px;
    letter-spacing: 1px;
    margin: 3px 0 2px;
}*/
/*.btn_mail {
    font-size: 17px;
    letter-spacing: .5px;
    height: 18px;
    line-height: 18px;

}
.btn_mail::before {
    content: "";
    display: inline-block;
    background: url(/common/img/header/header_link_mail.png) no-repeat 0 0 / contain;
    width: 25px;
    height: 18px;
    margin: 0 6px 0 0;
}
.btn_mail a {
    text-decoration: none;
}*/
/*#tellink a{
    display: block;
    width: 100%;
    height: 100%;
}*/

  /*　MYPAGE MENU END　－－－－－－－－－－　*/
/* HEADER LAYOUT　開始 */
/* HEADER START ------------------------------------------------ */
/*#header {
    width: 100%;
    height:100px;
    margin-bottom: -8px;
    background: #fff;
    position: relative;
    z-index: 100;
  }
#container_sub #header {
    margin-bottom: 0;
}
  #home #header{
    margin-bottom:57px;
  }*/
  /*#header .header_wrap {
    position: relative;
    margin: 0 auto;
    width: 1000px;
    height: 100px;
  }*/
  /*#header #logo h1,
     #header #logo h2 {
    margin-bottom: 7px;
    line-height: 15px;
    font-size: 70%;
    font-size: 12px;
    font-weight: normal;
    letter-spacing: normal;
    color: #666;
  }
  #header #logo {
    width: 283px;
    text-align: left;
    position: absolute;
    top: 33px;
    left: 0;
  }
  #header #logo img {
    width: 256px;
  }*/
  /*#header #header_no1 {
    width: 174px;
    position: absolute;
    top: 17px;
    left: 303px;
  }
  #header #header_no1 img {
    width: 174px;
  }*/
/* HEADER LAYOUT　終了 */


/* TOP（KV） LAYOUT　開始 */
#container #top {
	height: 392px;
	text-indent: -9999px;
	overflow: hidden;
	position: relative;
}
#container_sub #top {
	height:100px;
	color:#FFFFFF;
	position: relative;
}
/*#container_sub #top h3,*/
#container_sub #top p{
	text-indent: -9999px;
	overflow: hidden;
}
/* TOP（KV） LAYOUT　終了 */


/* MAIN LAYOUT　開始 */
/* ※下層ページ右サイド廃止に伴い、下層ページレイアウト調整増 */

#contents_inner {
	text-align:left;
	z-index:10;
    padding-top: 100px;
}
@media screen and (max-width: 750px) {
    #contents_inner {
        padding-top: calc(182 * 100vw / 750);
    }
}
#container_sub #contents_inner {
    padding: 100px 0 0; /* 真ん中の数値０に変更する！　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
}
@media screen and (max-width: 750px) {
    #container_sub #contents_inner {
        padding: calc(182 * 100vw / 750) 0 0; 
    }
}
#container_sub #contents_r {
	width:920px;/* 920pxに変更する！　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
	float:right;
	position: relative;
	text-align: left;
}
#container_sub #contents_r {
    width:920px;/* 920pxに変更する！　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
}
@media screen and (max-width: 750px) {
    #container_sub #contents_r {
        width:100%;
    }
}
/*#container #contents_l {
	width:190px;
	float:left;
	position: relative;
}*/
#container_sub #contents_l {
	width:220px;
    margin-top: 15px;
	float:left;
	position: relative;
}
@media screen and (max-width: 750px) {
    #container_sub #contents_l {
        width:0;
        margin-top: 0;
        float:none;
        position:inherit;
    }
}
#main {
	width:100%;
	float:left;
}
#container_sub #main {
    width: 920px;/* 920pxに変更する！　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
}
@media screen and (max-width: 750px) {
    #container_sub #main {
        width: 100%;
    }
}
#main a {
	color:#0044CC;
}
#side_r {
	width:180px;
	float:right;
}
@media (hover: hover) and (pointer: fine) {
    #main a:hover {
        color:#FF6600;
    }   
}
/* MAIN LAYOUT　終了 */


/* FOOTER LAYOUT　開始　ーーーーーーーーーー */
#footer {
   /* width: 100vw;*/
    margin:0 calc(50% - 50vw);
	text-align: center;
    z-index: 10;
}
@media screen and (max-width: 1200px) {
    #footer{
        margin:0;
    }
}
@media screen and (max-width: 750px) {
    #footer{
        padding-bottom: calc(100 * 100vw / 750);
    }
}
#footer a {
	text-decoration:none;
	z-index:0;
}


/* お支払い方法について
---------------------------------------- */
#footer_inner {
	padding: 40px 0;
	margin-bottom: 38px;
	background-color: #EEE;
}
#box_payment{
    width: 1200px;
    margin:0 auto;
    box-sizing: border-box;
    padding: 0 100px;
    text-align: left;
}
.payment_text {
	float: left;
	width: 630px
}
.payment_title {
    color: #666;
	font-weight: bold;
	margin-bottom: 18px;
}
.payment_description {
    font-size: 14px;
    color: #666;
    margin-bottom: 15px;
}
.payment_link::before {
    content: url(/common/img/ico_link_arrow.png);
    position: relative;
    top: 2px;
}
#footer .payment_link a {
	text-decoration: underline;
    color: #666;
    margin-left: 5px;
}

@media (hover: hover) and (pointer: fine) {
    #footer .payment_link a:hover {
        color: #F60;
    } 
}
.payment_item {
	float: right;
	width: 288px;
	/*margin-top: 20px;*/
}
ul.payment_list {
    width: 288px;
    margin-bottom: 10px;
	display: flex;
    justify-content: space-between;
}
.payment_list li {
    width: 88px;
    height: 28px;
    line-height: 28px;
	background-color: #1C2F61;
    text-align: center;
	color: #fff;
	font-size: 14px;
    border-radius: 4px;
}
.payment_list li:not(:last-child) {
	margin-right: 10px;
}
@media screen and (max-width: 750px) {
    #footer_inner {
        padding: calc(80 * 100vw / 750) 0;
        margin-bottom: 0;
    }
    #box_payment{
        width: 100%;
        padding: 0 calc(18 * 100vw / 750);
    }
    .payment_text {
        float: none;
        width: 100%;
    }
    .payment_title {
        font-size: calc(36 * 100vw / 750);
        margin-bottom: calc(40* 100vw / 750);
        text-align: center;
        color: #333;
    }
    .box_payment_inner {
        display: flex;
        flex-wrap: wrap;
        flex-direction: column-reverse;
    }
    .payment_description {
        font-size: calc(28 * 100vw / 750);
        color: #333;
        margin-bottom: calc(40 * 100vw / 750);
    }
    .payment_description span {
        display: block;
        margin-top: calc(10 * 100vw / 750);
    }
    .payment_link::before {
        content: url(/common/img/ico_link_arrow.png);
        position: relative;
        top: 2px;
    }
    #footer .payment_link a {
        font-size: calc(28 * 100vw / 750);
        /*text-decoration: underline;*/
        color: #333;
        margin-left: 5px;
    }
    .payment_item {
        float: none;
        width: auto;
        margin-top: 0;
        margin-bottom: calc(40 * 100vw / 750);
    }
    ul.payment_list {
        width: calc(562 * 100vw / 750);
        margin: 0 auto calc(30 * 100vw / 750);
        display: flex;
        /*justify-content: space-between;*/
    }
    .payment_list li {
        width: calc(170 * 100vw / 750);
        height: calc(170 * 100vw / 750);
        line-height: 1.2;
        background-color: #1C2F61;
        /*text-align: center;*/
        color: #fff;
        font-size: calc(36 * 100vw / 750);
        border-radius: calc(170 * 100vw / 750);
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .payment_list li:not(:last-child) {
        margin-right: 0;
    }
    .payment_card {
        text-align: center;
    }
    .payment_card img {
        width: 100%;
    }
}

/* グループサイト
---------------------------------------- */
#box_group {
	width:100%;
	margin:0 auto 30px;
    padding-bottom: 30px;
    border-bottom: 2px solid #1C2F61;
}
/*#box_group h4{
	margin-bottom: 25px;
}*/
.btn_designers img {
    width: 220px;
    height: auto;
}
.box_group_inner p {
    width:400px;
    margin: 0 auto 20px;
    border-radius: 6px;
    background: #D78113;
}
.box_group_inner p a {
    display: block;
    padding: 10px 0 ;
    box-sizing: border-box;
}
.box_group_inner ul {
    width: 1040px;
    margin: 0 auto 40px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    /*overflow: hidden;*/
}
.box_group_inner li {
    width:160px;
    height: 54px;
    /*font-size: 1.4rem;*/
    /*margin: 0 15px;*/
    margin: 0;
    border-radius: 6px;
    box-shadow: 0 0 calc(10 * 100vw / 750) rgb(0 0 0 / 20%);
}
.box_group_inner li a {
    height: 54px;
    text-decoration: underline;
    display: flex;
    justify-content: center;
    align-items: center;
}
/*.box_group_inner dl {
    margin-top: calc(30 * 100vw / 750);
}*/
.box_group_inner dt {
    /*font-size: calc(24 * 100vw / 750);*/
    margin-bottom: 10px;
}
.box_group_inner dd {
    margin: 0 auto;
    width: 160px;
    height: 54px;
    border-radius: 6px;
    box-shadow: 0 0 calc(10 * 100vw / 750) rgb(0 0 0 / 20%);
}
.box_group_inner dd a {
    height: 54px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.box_group_inner dd img {
    width: 150px;
}
@media (hover: hover) and (pointer: fine) {
    .box_group_inner p:hover,
    .box_group_inner a:hover img {
        opacity: .7;
    }
}
@media screen and (max-width: 750px) {
    #box_group {
        margin: 0;
        padding: calc(80 * 100vw / 750) 0;
        border-bottom: none;
    }
    /*#box_group h4{
        font-size: calc(36 * 100vw / 750);
        margin-bottom: calc(48 * 100vw / 750);
    }*/
    .btn_designers img {
        width: calc(370 * 100vw / 750);
        max-width: 100%;
        height: auto;
    }
    .box_group_inner {
        width:100%;
        margin: 0;
    }
    .box_group_inner p {
        width: auto;
        margin: 0 calc(18 * 100vw / 750);
        border-radius: calc(8 * 100vw / 750);
        background: #D78113;
    }
    .box_group_inner p a {
        display: block;
        padding: calc(24 * 100vw / 750) 0 ;
        box-sizing: border-box;
    }
    .box_group_inner ul {
        width: auto;
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: calc(18 * 100vw / 750) 0 ;
        padding: calc(24 * 100vw / 750) calc(18 * 100vw / 750);
    }
    .box_group_inner li {
        width: calc(220 * 100vw / 750);
        height: calc(90 * 100vw / 750);
        font-size: 14px;
        margin: 0;
        line-height: 1.4;
        border-radius: calc(8 * 100vw / 750);
        box-shadow: 0 0 calc(10 * 100vw / 750) rgb(0 0 0 / 20%);
    }
    .box_group_inner li a {
        text-decoration: none;
        height: calc(90 * 100vw / 750);
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .box_group_inner li img {
        max-width: 100%;
    }
    .box_group_inner dl {
        margin-top: calc(30 * 100vw / 750);
    }
    .box_group_inner dt {
        font-size: calc(24 * 100vw / 750);
        margin-bottom: calc(20 * 100vw / 750);
    }
    .box_group_inner dd {
        margin: 0 auto;
        width: calc(320 * 100vw / 750);
        height: calc(96 * 100vw / 750);
        border-radius: calc(8 * 100vw / 750);
        box-shadow: 0 0 calc(10 * 100vw / 750) rgb(0 0 0 / 20%);
    }
    .box_group_inner dd a {
        height: calc(96 * 100vw / 750);
    }
    .box_group_inner dd img {
        width: 98%;
        max-width: 100%;
    }
    /*#box_group dd a{
        box-shadow: 0 0 10px rgb(0 0 0 / 20%);
    }*/
}


/* ボトムリンクボタン
---------------------------------------- */
#box_ftop {
    clear: both;
	padding:0 10px;
	margin: 30px 0 35px;
}
#bmenu {
    width: 1200px;
    margin: 0 auto;
}
#bmenu li {
	display:inline;
}
#bmenu li a{
	display:inline;
	height:16px;
	padding:0 10px 0 13px;
	font-size:14px;
	line-height:100%;
    text-decoration: underline;
}
/*#box_ftop h3 {
	width:318px;
	height:20px;
	padding-bottom:5px;
    margin:0 auto;
}
#box_ftop h3 a {
	display:block;
	width:318px;
	height:20px;
	overflow:hidden;
}*/
@media screen and (max-width: 750px) {
    #box_ftop {
        clear: both;
        padding:0;
        margin: 0;
    }
    #bmenu {
        width: 100%;
        margin: 0;
    }
    #bmenu ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        background: #FAFAFA;
        border-top: 1px solid #C8C8C8;
        text-align: left;
    }
    #bmenu li {
        width: calc(100% / 2);
        display:block;
        box-sizing: border-box;
        position: relative;
    }
    #bmenu li:nth-child(odd) {
        border-right: 1px solid #C8C8C8;
        border-bottom: 1px solid #C8C8C8;
    }
    #bmenu li:nth-child(even) {
        border-bottom: 1px solid #C8C8C8;
    }
    #bmenu li a{
        display:block;
        height:auto;
        padding: calc(26 * 100vw / 750);
        font-size: calc(26 * 100vw / 750);
        line-height:auto;
        text-decoration: none;
    }
    #bmenu li::before {
        content: "";
        display: inline-block;
        width: calc(12 * 100vw / 750);
        height: calc(12 * 100vw / 750);
        margin-left: auto;
        border-bottom: calc(3 * 100vw / 750) solid #000;
        border-right: calc(3 * 100vw / 750) solid #000;
        transform: rotate(315deg);
        position: absolute;
        right: calc(26 * 100vw / 750);
        top: calc(30 * 100vw / 750);
    }
}


/* サイト名（コピーライト）
---------------------------------------- */
#fmiddle {
    width: 1200px;
    margin: 0 auto;
	padding: 0 10px;
	line-height: 150%;
    box-sizing: border-box;
}
#fmiddle h3 {
    font-size:12px;
    color: #333;
}
#fmiddle h3 + p {
    font-size:11px;
}
#cr {
    font-size: 10px;
	width:320px;
    padding-top: 0;
    margin:22px auto;
}
#cr img {
	margin-bottom:3px;
}
#cr p {
	font-family:"Lucida Grande",Arial, Helvetica, sans-serif;
}
@media screen and (max-width: 750px) {
    #fmiddle {
        width: 100%;
        padding: calc(54 * 100vw / 750) calc(10 * 100vw / 750);
        color: #FFF;
        line-height: 1.6;
        background: #1C2F61;
    }
    #fmiddle h3 {
        font-size: calc(30 * 100vw / 750);
        color:#FFF;
        margin-bottom: calc(44 * 100vw / 750);
    }
    #fmiddle h3 a {
        color:#FFF;
    }
    #fmiddle h3 + p {
        font-size: calc(24 * 100vw / 750);
    }
    #cr {
        font-size: calc(24 * 100vw / 750);
        width:auto;
        padding-top: 0;
        margin: calc(54 * 100vw / 750) auto 0;
    }
}


/* フレンドリンク
---------------------------------------- */
#fbottom {
    height: 50px;
	letter-spacing:0;
	line-height:50px;
	border-top: #333366 solid 1px;
}
#fbottom dl {
    font-size: 12px;
    display: inline-block;
}
#friend_link a {
    color:#666666;
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    #friend_link a:hover {
        color:#FF6600;
    }
}

#friend_link dt {
    width:80px;
    float:left;
    margin-right:5px;
    text-align:right;
    font-weight:bold;
    font-family:"Lucida Grande",Arial, Helvetica, sans-serif;
}
#friend_link dd {
    float:left;
    padding:0 12px;
}
@media screen and (max-width: 750px) {
    #fbottom {
        height: auto;
        padding: calc(20 * 100vw / 750) 0 calc(46 * 100vw / 750);
        line-height:1.6;
        border-top: #333366 solid 1px;
    }
    #fbottom dl {
        font-size: calc(18 * 100vw / 750);
    }
    #friend_link dt {
        width:auto;
        float:none;
        margin-right:0;
        text-align:center;
        font-size: calc(22 * 100vw / 750);
    }
    #friend_link dd {
        float:none;
        padding:0;
    }
    #friend_link dd a {
        margin: 0 calc(10 * 100vw / 750);
    }
}


/* フッターメニュー（スマホのみ）
---------------------------------------- */
@media screen and (max-width: 750px) {
    .footer_menu {
        width: 100%;
        height: calc(114 * 100vw / 750);
        position: absolute;
        left: 0;
        bottom: 0;
        position: fixed;
        z-index: 10;
    }
    .footer_menu_inner {
        display: flex;
    }
    .box_tel {
        width: calc(476 * 100vw / 750);
        height: calc(114 * 100vw / 750);
        color: #FFF;
        background: #1C2F61;
        text-align: left;
        padding: calc(20 * 100vw / 750) 0 calc(20 * 100vw / 750) calc(64 * 100vw / 750);
        box-sizing: border-box;
    }
    .box_tel .tel_number {
        font-size: calc(48 * 100vw / 750);
        position: relative;
        padding-left: calc(44 * 100vw / 750);
    }
    .box_tel .tel_number::before {
        content: "";
        width: calc(35 * 100vw / 750);
        height: calc(38 * 100vw / 750);
        background: url(/sp/common/images/support/ico_tel_s.webp) no-repeat;
        background-size: contain;
        filter: brightness(0) invert(1);
        position: absolute;
        top: calc(6 * 100vw / 750);
        left: calc(2 * 100vw / 750);
    }
    .box_tel .tel_number a {
        color: #FFF;
        text-decoration: none;
        display: inline-block;
        line-height: 1;
    }
    .box_tel .reception {
        font-size: calc(14 * 100vw / 750);
    }
    .box_estimate {
        width: calc(274 * 100vw / 750);
        height: calc(114 * 100vw / 750);
        background: #019141;
        position: relative;
        display: flex;
        align-items: center;
        padding-left: calc(90 * 100vw / 750);
        box-sizing: border-box;
    }
    .box_estimate::before {
        content: "";
        width: calc(48 * 100vw / 750);
        height: calc(64 * 100vw / 750);
        background: url(/sp/common/images/footer_menu/ico_estimate_s.webp) no-repeat;
        background-size: contain;
        position: absolute;
        top: calc(24 * 100vw / 750);
        left: calc(22 * 100vw / 750);
    }
    .box_estimate a {
        display: block;
        width: 100%;
        height: auto;
    }
    .box_estimate p {
        font-size: calc(20 * 100vw / 750);
        font-weight: bold;
        text-align: left;
        color: #FFF;
    }
}





/* FOOTER LAYOUT　終了 */

/* -------------------------- PAGE LAYOUT START -------------------------- */


/* -------------------------- GLOBAL NAVI START -------------------------- */

/* ヘッダ（グローバルメニュー含む）
---------------------------------------------- */
#header {
    /*width: 100vw;*/
    height: 85px;
    margin:0 calc(50% - 50vw);
    border-bottom: 1px solid #333;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: #FFF;
    z-index: 1000;
}
@media screen and (max-width: 1200px) {
    #header{
        margin:0;
    }
}@media screen and (max-width: 750px) {
    #header{
        width: 100%;
    }
}
/* 追従時レイアウト */
#header.fixed,
#container_sub #header.fixed {
	box-shadow: 0px 1px 10px #777;
	-moz-box-shadow: 0px 1px 10px #777;
    -webkit-box-shadow: 0px 1px 10px #777;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
    z-index: 1000;
}

#header_navi {
    width: 1200px;
    height: 85px;
    display: flex;
    flex-flow: nowrap;
    margin: 0 auto;
    position: relative;
}
@media screen and (min-width: 1200px) {
    #header_navi {
        width: 100%;
        max-width: 1512px;
    }
    #main_menu {
        width: 100%;
    }
}
#logo {
    width: 200px;
    height: 120px;
    background: #FFF;
    z-index: 1500;
}
#logo img {
    max-width: -webkit-fill-available; /* Chrome, Safari */
    max-width: -moz-available;         /* Firefox */
    max-width:stretch;
}
#logo a {
    transition: 0.3s;
}
#logo a:hover {
    opacity: .7;
}

/* スマホ用ヘッダ設定 */
@media screen and (max-width: 750px) {
    #header_navi {
        width: 100%;
        display: flex;
        flex-direction: column;
    }
    #main_menu {
        width: 100%;
    }
    .header_sp {
        width: 100%;
        height: calc(104 * 100vw / 750);
        background: #1C2F61;
        display: flex !important;
        flex-wrap: nowrap;
    }
    .header_sp .logo {
        width: calc(542 * 100vw / 750);
        height: calc(104 * 100vw / 750);
        display: flex;
        align-items: center;
    }
    .header_sp .estimate_box,
    .header_sp .gnav_btn {
        width: calc(104 * 100vw / 750);
        height: calc(104 * 100vw / 750);
    }
    .header_sp .logo img {
        width: calc(445 * 100vw / 750);
        height: auto;
        margin-left: calc(24 * 100vw / 750);
    }
    .header_sp .estimate_box img {
        width: 100%;
        height: auto;
    }
    
    /* ハンバーガーメニュー */
    .btn_smenu {
        position: relative;
        top: 50%;
    }
    .btn_smenu span {
        display: block;
        width: calc(48 * 100vw / 750);
        height: calc(6 * 100vw / 750);
        border-radius: calc(16 * 100vw / 750);
        background: #fff;
        transition: .3s all;
        position: absolute;
        top: calc(50% - calc(2 * 100vw / 750));
        left: 0;
        right: 0;
        margin: auto;
        transition: all 0.3s;
    }
    .btn_smenu span:nth-child(1) {
      transform: translate(0, calc(-18* 100vw / 750));
    }
    .btn_smenu span:nth-child(3) {
      transform: translate(0, calc(18* 100vw / 750));
    }
    .btn_smenu.active span:nth-child(1) {
        transform: rotate(45deg);
    }
    .btn_smenu.active span:nth-child(2) {
        display: none;
    }
    .btn_smenu.active span:nth-child(3) {
        transform: rotate(-45deg);
    }
}






/* 中央メニュー（グローバル、マイナビ） */
#main_menu {
    min-width: 634px;
    height: 85px;
    display: flex;
    flex-flow: column;
}
/* マイナビ */
#my_navi {
    height: 36px;
    display: block;
    border-bottom: 1px solid #D9D9D9;
    text-align: left;
    position: relative;
}
#my_navi ul {
    height: 36px;
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: 0;
    right: 5px;
}
#my_navi li {
    text-decoration: none;
    position: relative;
    font-size: 14px;
    font-weight: bold;
}
#my_navi li.btn_member a::before,
#my_navi li.btn_mypage a::before,
#my_navi li.btn_cart a::before,
#my_navi li.btn_inq a::before {
    position: absolute;
    top: 8px;
    left: 10px;
}
#my_navi li.btn_member a::before {
    content: url("../img/header/ico_member.webp");
}
#my_navi li.btn_mypage a::before {
    content: url("../img/header/ico_mypage.webp");
}
#my_navi li.btn_cart a::before {
    content: url("../img/header/ico_cart.webp");
}
#my_navi li.btn_inq a::before {
    content: url("../img/header/ico_inq.webp");
}
#my_navi a {
    display: block;
    text-decoration: none;
    height: 100%;
    box-sizing: border-box;
    line-height: 36px;
    padding: 0 10px 0 30px;
}
#my_navi a:hover {
    color: #333;
    opacity: .7;
}
/* グローバルメニュー */
#gnavi,
#container_sub #gnavi{
	box-sizing: border-box;
    width: 100%;
	height: 48px;
	/*left: 0;
	right: 0;*/
	/*z-index: 1000;*/
	background: #FFF;
}
/*@media screen and (max-width: 1200px) {
    #gnavi,
    #container_sub #gnavi{
        height: calc(80 * 100vw / 750);
        margin:0;
    }
}*/
/*#gnavi {
	top: -72px;
}*/
/*#container_sub #gnavi {
	top: 0;
}
*/
/* ホバー関連挙動 */
/*#gnav {
    width: 634px;
    margin: 0 auto;
}*/
/*#gnavi.fixed >ul {
    margin: 0 auto;

}*/
#gnavi > ul,
#gnavi .gnav_s_wrapp ul {
	box-sizing: border-box;
    width: 100%;
    min-width: 634px;
	height:48px;
	margin:0 auto;
	background:#FFF !important;
    color: #333;
    overflow: hidden;
    display: flex;
	position: static;
    text-align: center;
    /*margin: 0 calc(50% - 500px);*/
}
#gnavi #gnav > li {
	box-sizing: border-box;
    width: 100%;
    min-width: 146px;
	height:48px;
	margin:0;
	padding:0;
	list-style:none;
}
#gnavi #gnav > li.price,
#gnavi #gnav > li.ddate {
    width: 100%;
    min-width: 98px;
}
#gnavi li a,
#gnavi li.select_greeting > span {
	box-sizing: border-box;
    width:100%;
	height:100%;
	line-height: 50px;
	display:block;
	text-decoration: none;
	color:#333;
	font-size: 15px;
	font-weight:bold;
    transition-duration: 0.4s;
    position: relative;
}
@media screen and (max-width: 750px) {
    #gnavi,
    #container_sub #gnavi{
        height: calc(80 * 100vw / 750);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    }
    #gnavi .gnav_s_wrapp ul {
        width: 100vw;
        min-width: auto;
        height: auto;
        margin:0;
        justify-content: space-between;
        /*background:#FFF !important;
        color: #333;
        overflow: hidden;
        display: flex;
        position: static;*/
        /*margin: 0 calc(50% - 500px);*/
    }
    #gnavi .gnav_s_wrapp ul li {
        position: relative;
    }
    #gnavi .gnav_s_wrapp ul li::after {
        content: "";
        width: calc(2 * 100vw / 750);
        height: calc(50 * 100vw / 750);
        background: #CCC;
        position: absolute;
        top: calc(15 * 100vw / 750);
        right: 0;
    }
    #gnavi .gnav_s_wrapp ul li:last-child::after {
        content: none;
    }
    #gnavi #gnav_s > li {
        box-sizing: border-box;
        width: calc(100vw / 3);
        min-width: auto;
        height: calc(80 * 100vw / 750);
    }
    #gnavi li a,
    #gnavi li.select_greeting > span {
        font-size: calc(25 * 100vw / 750);
        line-height: calc(80 * 100vw / 750);
    }
    
    
/* スマホ用ドロップメニュー設定 */    
    #gnav_s .dropmenu {
      display: none; /* 最初は隠しておく */
    }

    /* JSが動かない環境用の予備（必須ではありません） */
    #gnav_s li.active .dropmenu {
      /* JSで制御するため、CSSで display:block!important などを書くとアニメーションが干渉するので注意 */
    }
    /* 背景レイヤーの初期状態 */
    #menu-overlay {
        display: none;       /* 最初は隠す */
        position: fixed;     /* 画面に固定 */
        top: calc(182 * 100vw / 750); left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.7); /* 黒の透過 */
        z-index: -1;        /* メニュー(1000)より下に設定 */
    }

    /* メニュー本体（これにz-indexを付けて浮き上がらせる） */
    #gnav_s {
      position: relative;
      z-index: 10;
    }

    /* アクティブ時のメニューを最前面に */
    #gnav_s li.active {
      z-index: 11;
    }
    
    
    
    
    
}

    /*#gnavi li a:hover,*/
    #gnavi li.select_greeting > span:hover {
        background: #1C2F61;
        color:#fff;
    }


#gnavi li a .ico_kunoji,
#gnavi li.select_greeting > span .ico_kunoji{
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-left: auto;
    border-bottom: 2px solid #333;
    border-right: 2px solid #333;
    transform: rotate(406deg);
    position: relative;
    top: -2px;
    left: 8px;
}
#gnavi li a:hover .ico_kunoji,
#gnavi li.select_greeting > span:hover .ico_kunoji{
    border-bottom: 2px solid #FFF;
    border-right: 2px solid #FFF;
}
/* 「挨拶状を選ぶ」ポインター変更 */
#gnavi li.select_greeting > span {
	cursor: default;
}
@media screen and (max-width: 750px) {
    #gnavi li a .ico_kunoji,
    #gnavi li.select_greeting > span .ico_kunoji{
        /*content: "";
        display: inline-block;*/
        width: calc(12 * 100vw / 750);
        height: calc(12 * 100vw / 750);
        /*margin-left: auto;*/
        border-bottom: calc(4 * 100vw / 750) solid #333;
        border-right: calc(4 * 100vw / 750) solid #333;
        /*transform: rotate(406deg);
        position: relative;*/
        top: calc(-4 * 100vw / 750);
        left: calc(12 * 100vw / 750);
    }
    #gnavi li a:hover .ico_kunoji,
    #gnavi li.select_greeting > span:hover .ico_kunoji{
        border-bottom: calc(4 * 100vw / 750) solid #FFF;
        border-right: calc(4 * 100vw / 750) solid #FFF;
    }
}

/* メガメニュー設定 */
.dropmenu {
	display: none;
	background: #fff;
	width: 100vw;
	position: fixed;
	top: 86px;
    left: 0;
    right: 0;
    margin:0 calc(50% - 50vw);
}
@media screen and (max-width: 1200px) {
    .dropmenu{
        margin:0;
    }
}
@media screen and (max-width: 750px) {
    .dropmenu {
        top: calc(182 * 100vw / 750);
        /*left: 0;
        right: 0;*/
    }
    .dropmenu ul.select_greeting_list {
        justify-content: center;
    }
    .dropmenu ul.category_list li dl {
        display: flex;
        justify-content: space-evenly;
    }
    .select_greeting_list_inner dd {
        width: calc(320 * 100vw / 750);
        /*height: calc(60 * 100vw / 750);*/
        /*line-height: calc(60 * 100vw / 750);*/
        font-size: calc(25 * 100vw / 750);
        position: relative;
    }
    .select_greeting_list_inner dd a {
        font-weight: normal !important;
        padding-left: calc(50 * 100vw / 750);
        text-align: left;
    }
    
    .select_greeting_list_inner dd::after {
        content: "";
        display: inline-block;
        width: calc(12 * 100vw / 750);
        height: calc(12 * 100vw / 750);
        margin-left: auto;
        border-bottom: calc(2 * 100vw / 750) solid #333;
        border-right: calc(2 * 100vw / 750) solid #333;
        transform: rotate(315deg);
        position: absolute;
        top: calc(30 * 100vw / 750);
        right: calc(20 * 100vw / 750);
    }
}


/*.dropmenu ul {
    width: 1200px;
    margin: 0 auto;
}*/
#gnav ul {
	box-sizing: border-box;
	width: 1200px;
	margin:0 auto;
	padding: 60px 0;
	background:#fff;
	text-align:left;
}
#gnav ul li {
	width:180px;
	height:auto;
	margin-right:24px;
	float:left;
}
#gnav ul li.last {
	margin-right: 0 !important;
}

/* Gナビ 共通設定 */
#gnavi #gnav ul li dt a,
#gnavi #gnav ul li dt span {
	padding-bottom: 3px;
    font-size: 15px;
}
#gnavi #gnav ul li a{
	font-size: 14px;
    line-height: 2;
    display: inline-block !important;
}
#gnavi img {
	transition: opacity .3s;
}
#gnavi a:hover img {
	opacity: .6;
}

/* Gナビ 挨拶状を選ぶ */
#gnav ul.select_greeting_list {
    width: 1200px !important;
    margin: 0 auto;
    padding: 40px 0 50px 220px;
	/*width: 1000px;
	margin: 0 auto;
	padding: 25px 0 57px;*/
    /*margin: 0 calc(50% - 50vw);*/
}
@media screen and (min-width: 1200px) {
    #gnav ul.select_greeting_list {
        padding: 40px 0 50px calc(220px - 1.5vw) ;
    }
}
@media screen and (min-width: 1512px) {
    #gnav ul.select_greeting_list {
        padding: 40px 0 50px 88px;
    }
}
#gnavi ul.select_greeting_list li:nth-child(1) {
	width: 259px;
    /*margin-left:calc(50% - 500px);*/
}
#gnavi ul.select_greeting_list li:nth-child(2) {
	width: 207px;
}
#gnavi ul.select_greeting_list li:nth-child(3),
#gnavi ul.select_greeting_list li:nth-child(4) {
	width: 150px;
}
#gnavi ul.select_greeting_list li {
	margin-right: 40px;
}
#gnavi ul.select_greeting_list li .select_greeting_list_inner {
	float: left;
	margin-right: 40px;
}
@media screen and (max-width: 750px) {
    #gnavi ul.select_greeting_list li:nth-child(1) {
        width: calc(714 * 100vw / 750);
        margin: calc(20 * 100vw / 750) auto;
    }
    #gnavi ul.select_greeting_list li {
        margin-right: 0;
    }
    #gnavi ul.select_greeting_list li .select_greeting_list_inner {
        float: none;
        margin-right: 0;
    }
}

#gnavi ul.select_greeting_list li .select_greeting_list_inner.last {
	margin-right: 0;
}
#gnavi #gnav ul li dt a {
	border-bottom:none !important;
}
#gnavi ul.select_greeting_list li:nth-child(4) dt {
	border-bottom:#CCC solid 1px;
}

/* Gナビ ご利用ガイド */
#gnavi ul.header_guide_list {
    width: 1200px !important;
    margin: 0 auto;
    padding: 40px 0 50px 220px;
    /*margin: 0 calc(50% - 50vw);*/
}
@media screen and (min-width: 1200px) {
    #gnavi ul.header_guide_list {
        padding: 40px 0 50px calc(220px - 1.5vw) ;
    }
}
@media screen and (min-width: 1512px) {
    #gnavi ul.header_guide_list {
        padding: 40px 0 50px 88px;
    }
}
/*#gnavi ul.header_guide_list {
    width: 1200px !important;
    margin: 0 auto;
    padding: 25px 0 50px;
    border: 1px solid #FF0000;
}*/
#gnavi ul.header_guide_list li {
	margin-right: 40px;
}
#gnavi ul.header_guide_list li:nth-child(1) {
	width: 368px;
    /*margin-left:calc(50% - 461px);*/
}
#gnavi ul.header_guide_list li:nth-child(2) {
	width: 190px;
}
#gnavi ul.header_guide_list li:nth-child(3) {
	width: 268px;
}
#gnavi ul.header_guide_list li .header_guide_list_inner {
	float: left;
	margin-right: 48px;
}
#gnavi ul.header_guide_list li .header_guide_list_inner.last {
	margin-right: 0;
}
#gnavi ul.header_guide_list li:first-child dt{
    border-bottom: 1px solid #CCC;
}


/* サイドメニュー（スマホ用）■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
---------------------------------------------------------- */
/* サイド共通設定
--------------------------------------------------------- */
#side {
    position: fixed;
    right: 0;
    width: 100%;
    height: 100%;
    top: calc(104 * 100vw / 750);
    background-color: #fff;
    -webkit-overflow-scrolling: touch;
    z-index: 700;
    overflow: auto;
    transform: translateX(100%);
    transition: 0.3s;
    text-align: left;
}
#side.active {
    transform:none;
}

#side .side_container {
	margin-bottom: calc(96*100vw/750);
}
#side a {
	text-decoration: none;
}
#side a img {
	vertical-align: bottom;
}
#side .side_wrap {
   padding: calc(48*100vw/750) calc(24*100vw/750) calc(198*100vw/750); 
}
#side .side_title {
	margin-bottom: calc(30*100vw/750);
	font-size: calc(36*100vw/750);
	font-weight: 700;
	letter-spacing: .02em;
	line-height: 1.1;
}
#side .side_title.-group {
	text-align: center;
}
#side .side_title.-misara {
	text-align: center;
    font-size: calc(24*100vw/750);
    font-weight: normal;
}
/* サイドメニュー */
#side .side_menu-list {
	display: flex;
	flex-direction: column;
}
#side .side_menu-text {
	padding: calc(20*100vw/750) calc(25*100vw/750);
	font-size: calc(32*100vw/750);
	font-weight: 700;
    color: #1C2F61;
	display: flex;
	align-items: center;
	gap: 0 calc(24*100vw/750);
	cursor: pointer;
    background: #EEE;
}
#side .side_menu-text.-about,
#side .side_menu-text.-comment,
#side .side_menu-text.-kanshu,
#side .side_menu-text.-company,
#side .side_menu-text.-terms,
#side .side_menu-text.-horei,
#side .side_menu-text.-kojin,
#side .side_menu-text.-sitemap {
	font-weight: 500;
    color: #333;
    background: none;
    border-bottom: 1px solid #DDD;
}
#side .side_menu-arrow {
    position: relative;
    width: calc(28*100vw/750);
    height: calc(28*100vw/750);
    margin: 0 calc(10 * 100vw / 750) 0 auto;
    border-radius: 50%;
    background: #1C2F61;
}
#side .side_menu-arrow::after {
    position: absolute;
    content: "";
    top: 50%;
    left: 58%;
    transform: translate(-50%, -50%);
    width: calc(11*100vw/750);
    height: calc(14*100vw/750);
    background-color: #FFF;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
}
#side .side_menu-arrow.-guide {
    width: calc(36*100vw/750);
    height: calc(36*100vw/750);
    background: #1C2F61;
    display: inline-block;
    top: calc(5*100vw/750);
    left: calc(12*100vw/750);
}
#side .side_menu-arrow.-guide::after {
    width: calc(14*100vw/750);
    height: calc(18*100vw/750);
}

/* サイドアコーディオンメニュー */
#side .side_accordion-inner {
	display: none;
	padding: calc(36*100vw/750) 0 calc(80*100vw/750);
}
#side .side_accordion-list {
	display: flex;
	flex-wrap: wrap;
	gap: calc(20*100vw/750) calc(16*100vw/750);
}
#side .side_accordion-item.-round {
	border-radius: calc(40*100vw/750);
	background: #FFF;
    border:1px solid #D9D9D9;
}
#side .side_accordion-item.-full {
	flex: 0 0 100%;
}
#side .side_accordion-item.-half {
	flex: 0 0 calc(50% - calc(16*100vw/750));
}
#side .side_accordion-btn {
	font-size: calc(34*100vw/750);
	font-weight: 400;
	display: flex;
	align-items: center;
	justify-content: center;
    line-height: 1;
    padding: calc(18 * 100vw / 750) 0;
}
#side .-round .side_accordion-btn {
	font-size: calc(28*100vw/750);
}
#side .side_accordion-arrow {
	margin-left: auto;
	position: relative;
  width: calc(40*100vw/750);
  height: calc(40*100vw/750);
}
#side .side_accordion-arrow::before, 
#side .side_accordion-arrow::after {
	display: block;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
    background: #1C2F61;
}
#side .side_accordion-arrow::before {
	width: calc(4*100vw/750);
  height: calc(24*100vw/750);
}
#side .side_accordion-arrow::after {
  width: calc(24*100vw/750);
  height: calc(4*100vw/750);
}
#side .side_menu-text.active .side_accordion-arrow::before {
	display: none;
}
#side .side_accordion-text {
    margin-top: calc(24*100vw/750);
}
/* サイドバナー */
#side .side_bnr-group img {
    width: calc(690 * 100vw / 750);
    height: calc(154 * 100vw / 750);
}
#side .side_bnr-group li {
    margin-top: calc(20 * 100vw / 750);
    text-align: center;
}
#side .side_bnr-group li.active {
    margin-bottom: calc(40 * 100vw / 750);
}
#side .side_bnr-group p {
    margin: calc(20 * 100vw / 750) 0 calc(40 * 100vw / 750);
}
/*#side .side_bnr-list {
	display: flex;
	flex-direction: column;
	gap: calc(56 * 100vw / 750) 0;
}*/
/*#side .side_bnr-item img {
	width: 100%;
	height: auto;
	border-radius: calc(12*100vw/750);
	box-shadow: 0 0 calc(16 * 100vw / 750) rgb(0 0 0 / 16%);
}*/
/*#side .side_bnr-inner {
	padding: calc(20* 100vw / 750) calc(48* 100vw / 750);
	position: relative;
	border-radius: calc(16* 100vw / 750);
  box-shadow: 0px 0px calc(50* 100vw / 750) 0px rgba(0, 0, 0, 0.16);
}*/
/*#side .side_bnr-title {
	margin-bottom: calc(12* 100vw / 750);
	font-size: calc(38* 100vw / 750);
	font-weight: bold;
	letter-spacing: .04em;
  color: #1C2F61;
}*/
/*#side .side_bnr-title .btn_g-arrow{
  background: #1C2F61;
  display: inline-block;
  width: calc(35 * 100vw / 750);
  height: calc(35 * 100vw / 750);
  margin-left: calc(15 * 100vw / 750);
}
#side .btn_g-arrow::after{
  background: #fff;
  width: calc(14 * 100vw / 750);
  height: calc(18 * 100vw / 750);
  left: calc(20 * 100vw / 750);
}*/
/*#side .side_bnr-desc {
	font-size: calc(26* 100vw / 750);
	letter-spacing: .02em;
}*/

/* サイド個別設定
--------------------------------------------------------- */
/* side_user */
#side .side_user {
	margin-bottom: calc(72*100vw/750);
}
#side .side_user-list {
	padding: calc(32*100vw/750) 0;
	display: grid;
	grid-template-columns: repeat(4,1fr);
	border-top: 2px solid #1C2F61;
	border-bottom: 2px solid #1C2F61;
}
#side .side_user-item {
	display: flex;
	justify-content: center;
}
#side .side_user-item.-account img{
	width: calc(109*100vw/750);
	height: calc(77*100vw/750);
}
#side .side_user-item.-login img {
	width: calc(127*100vw/750);
	height: calc(77*100vw/750);
}
#side .side_user-item.-cart img {
	width: calc(135*100vw/750);
	height: calc(77*100vw/750);
}
#side .side_user-item.-contact img {
  width: calc(164*100vw/750);
	height: calc(77*100vw/750);
}
/* side_search */
/*#side .side_search {
	margin-bottom: calc(56*100vw/750);
}
#side .side_search-list {
	margin-bottom: calc(24*100vw/750);
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: calc(24*100vw/750) calc(22*100vw/750);
}
#side .side_search-item {
	height: calc(158*100vw/750);
	border-radius: calc(10*100vw/750);
	background: #EEEEEE;
}

#side .side_search-item a {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
  column-gap:calc(21*100vw/750);
  padding:calc(27*100vw/750) 0 calc(27*100vw/750) calc(25*100vw/750);
  box-sizing: border-box;
}
#side .side_search-item a::before {
	content: "";
  width:calc(70*100vw/750);
  height: calc(104*100vw/750);
  flex-shrink: 0;
  box-shadow: 0px 0px calc(18*100vw/750) 0px rgba(0, 0, 0, 0.25);
}
#side .side_search-item.-m_color a::before {
	background: url("https://mochu.aisatsujo.jp/mochu/images/common/card/img_hagaki_standard01.webp") no-repeat 0 0 /contain;
}
#side .side_search-item.-m_stylish a::before {
	background: url("https://mochu.aisatsujo.jp/mochu/images/common/card/img_hagaki_stylish01.webp") no-repeat 0 0 /contain;
}
#side .side_search-item.-m_gray a::before {
	background: url("https://mochu.aisatsujo.jp/mochu/images/common/card/img_hagaki_usuzumi01.webp") no-repeat 0 0 /contain;
}
#side .side_search-item.-m_mono a::before {
	background: url("https://mochu.aisatsujo.jp/mochu/images/common/card/img_hagaki_mono01.webp") no-repeat 0 0 /contain;
}

#side .side_search-text {
	font-size: calc(26*100vw/750);
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.5;
  color: #1C2F61;
}
#side .side_search-text span {
	font-size: calc(28*100vw/750);
  display: block;
}*/


/* side_service */
/*#side .side_service .side_bnr-list{
	margin-bottom: calc(56*100vw/750);
}
#side .side_bnr-inner.-beginner {
	background: url("https://mochu.aisatsujo.jp/mochu/sp/images/common/bnr/bnr_beginner.webp") no-repeat 0 0 / cover;
  box-shadow: 0 0 calc(28 * 100vw / 750) rgb(0 0 0 / 16%);
  padding: 0 calc(37 * 100vw / 750);
  height: calc(212 * 100vw / 750);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#side .side_bnr-inner.-beginner .side_bnr-desc{
  font-size: calc(24 * 100vw / 750);
  letter-spacing: .06em;
  line-height: 160%;
}*/
/* side_shochu */
/*#side .side_bnr-inner.-mame {
	background: url("https://mochu.aisatsujo.jp/mochu/sp/images/common/bnr/bnr_mame.webp") no-repeat right center / cover;
}
#side .side_bnr-inner.-mame .side_bnr-title{
  font-size: calc(36 * 100vw / 750);
}
#side .side_bnr-inner.-mame .side_bnr-desc{
  letter-spacing: .08em;
}*/
/* side_other */
#side .side_other .side_bnr-list {
	margin-bottom: calc(56*100vw/750);
}

/* side_group */
#side .side_group_list {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: calc(40*100vw/750) calc(22*100vw/750);
}
#side .side_group_list.-misara {
	display:block;
}
#side .side_group_item {
	width: 100%;
	height: calc(96*100vw/750);
	border-radius: calc(10*100vw/750);
	box-shadow: 0 0 calc(16 * 100vw / 750) rgb(0 0 0 / 16%);
    display: flex;
    align-items: center;
    justify-content: center;
}
#side .side_group_item.-misara {
	width: calc(320*100vw/750);
	height: calc(96*100vw/750);
    margin: 0 auto;
}
#side .side_group_item img {
	width: 100%;
	height: auto;
}
/* //サイドメニュー（スマホ用）■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
---------------------------------------------------------- */







/* Gナビ 宛名印刷（旧　法人さま向け）
---------------------------------------------------------- */
/*#gnav ul.address_print_list {
	width: 1000px;
	margin: 0 auto;
	padding: 25px 340px 50px;
    width: 100vw !important;
    margin: 0 calc(50% - 50vw);
    padding: 25px 0 50px;
}
#gnav ul.address_print_list li {
	width: 320px;
    margin: 0 calc(50% - 160px);
}
#gnavi ul.address_print_list li .address_print_list_inner {
	float: left;
	margin-right: 40px;
}
#gnavi ul.address_print_list li .address_print_list_inner.last {
	margin-right: 0;
}*/

/* Gナビ 価格
---------------------------------------------------------- */
/*#gnav ul.price_list {
	width: 1000px;
	margin: 0 auto;
	padding: 25px 199px 50px;
    width: 100vw !important;
    margin: 0 calc(50% - 50vw);
    padding: 25px 0 50px;
}
#gnav ul.price_list li {
	width: 602px;
    margin: 0 calc(50% - 301px);
}
#gnavi ul.price_list li .price_list_inner {
	float: left;
	margin-right: 40px;
}
#gnavi ul.price_list li .price_list_inner.last {
	margin-right: 0;
}*/

/* Gナビ 納期
---------------------------------------------------------- */
/*#gnav ul.ddate_list {
	width: 1000px;
	margin: 0 auto;
	padding: 25px 358px 50px;
    width: 100vw !important;
    margin: 0 calc(50% - 50vw);
    padding: 25px 0 50px;
}
#gnav ul.ddate_list li {
	width: 284px;
    margin: 0 calc(50% - 142px);
}
#gnavi ul.ddate_list li .ddate_list_inner {
	float: left;
	margin-right: 40px;
}
#gnavi ul.ddate_list li .ddate_list_inner.last {
	margin-right: 0;
}*/


#gnav ul li dt,
#gnav ul li dt a {
	margin-bottom: 12px;
	font-size: 14px;
}
#gnav ul li dd {
	font-size: 75%;
	line-height: 1.4em;
}
#gnav ul li dd a {
	font-weight: normal;
}
#gnav ul li dd dl {
	padding:0;
}
#gnav ul li dd dt {
	font-size:100%;
}
#gnav ul li dd dd {
	font-size:100%;
}
#gnav ul li p {
	margin-bottom:10px;
	font-size:14px;
}
#gnavi #gnav ul li a{
	width:auto;
	height:auto;
	margin-right: 20px;
	margin:0;
	padding:0;
	display:block;
	text-decoration:none;
	background:none!important;
	color:#333;
}

/*  見出しリンクの文字サイズを上げる*/
#gnavi #gnav ul li dl dt a,
#gnavi #gnav ul li p a {
	font-size: 14px;
}
#gnavi #gnav ul li a:hover{
	text-decoration:underline;
}
#gnavi #gnav ul li dt a,
#gnavi #gnav ul li dt span,
#gnavi #gnav ul li p a{
	height:auto;
	line-height:26px;
	display:block;
	color:#333;
	font-weight:bold;
	border-bottom:#CCC solid 1px;
}



/* ドロップダウン時背景 */
#bglayer{
	background:#000;
	opacity:.6;
	display:block;
    position: fixed;
	top:0;
	right: 0;
	left:0;
	bottom: 0;
	width:100vw;
    height: 100%;
    margin:0 calc(50% - 50vw);
    z-index:10;
}
@media screen and (max-width: 1200px) {
    #bglayer{
        margin:0;
    }
}

/* 追従時レイアウト */
/*#gnavi.fixed {
	box-shadow: 0px 1px 10px #777;
	-moz-box-shadow: 0px 1px 10px #777;
    -webkit-box-shadow: 0px 1px 10px #777;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
}*/
/* ドロップダウン時背景 */
/*#bglayer{
	background:#000;
	opacity:.6;
	display:block;
	position:absolute;
	height:100%;
	right: 0;
	left:0;
	top:0;
	bottom: 0;
	z-index:99;
	width:100%;
}*/




/* 右側メニュー（見積もり、電話番号） */
#h_navi {
    width: 367px;
    height: 85px;
    display: flex;
    align-items: center;
}
/* 見積もりボタン */
#h_navi #estimate_box{
    width: 86px;
    background: url(/common/img/header/img_estimate-on.png) 0 0 no-repeat; 
}
#h_navi #estimate_box a {
    display: block;
    width: 86px;
    height: 85px;
    transition: 0.3s;
}
#h_navi #estimate_box a img {
    transition: 0.3s;
}
#h_navi #estimate_box a:hover img{
    opacity: 0;
}
/* 電話番号 */
#h_navi #tel_box{
    width: 280px;
    /* padding-top: 26px; */
    text-align: center;
}
.tel_num {
    font-size: 32px;
    font-weight: bold;
    font-family: 'korolev', sans-serif;
    line-height: 1;
    margin-bottom: 4px;
    display: flex;
    align-items: center;
}
.tel_num::before {
    content: "";
    display: inline-block;
    background: url(/common/img/header/ico_tel.webp) no-repeat 0 0 / contain;
    width: 21px;
    height: 23px;
    margin: 0 6px 0 20px;
}
.tel_time {
    font-size: 10.5px;
    letter-spacing: 0;
}

/* ヘッダ（PC時非表示） */
.header_sp_wrapp,
.gnav_s_wrapp {
    display: none !important;
}

@media screen and (max-width: 750px) {
    .header_sp_wrapp,
    .gnav_s_wrapp {
        display: block!important;
    }
/* ヘッダ（スマホ時非表示） */
    #logo,
    #my_navi,
    #gnav,
    #h_navi {
        display: none !important;
    }
}











/* -------------------------- GLOBAL NAVI END -------------------------- */


/* -------------------------- MAIN START -------------------------- */
/*#container #contents #main h3,
#container_sub #contents #main h3 {
	background-color: #f0f0f0;
	color: #1C2F61;
	font-size: 22px;
	line-height: 1;
	margin-bottom: 30px;
	padding: 16px 16px 14px 16px;
}*/
/*@media screen and (max-width: 750px) {
    #container #contents #main h3,
    #container_sub #contents #main h3 {
        font-size: calc(32 * 100vw / 750);
        margin: 0 0 calc(40 * 100vw / 750);
        padding: calc(20 * 100vw / 750) calc(24 * 100vw / 750);
        position: relative;
    }
}*/
/*#container_sub #contents #main h4 {
    background: #f0f0f0;
    border-left: #bbb solid 5px;
    color: #333;
    font-weight: bold;
    font-size: 19px;
    line-height: 1.4;
    margin-bottom: 30px;
    padding: 8px 10px 6px;
}*/
.mbox {
	border-right:#CCCCCC solid 1px;
	border-left:#CCCCCC solid 1px;
	border-bottom:#CCCCCC solid 1px;
	padding:10px;
	width: 578px;
}

/* パンくずリスト　開始 */
#plist {
	margin-bottom:15px;
	padding:0;
	border-bottom:#CCCCCC solid 1px;
}
#plist li {
	display:inline-block;
	padding:0 5px 0 18px;
	background:url(../img/lm_arrow.gif) no-repeat 0 0;
	font-size:14px;
    color:#003366;
    line-height: 12px;
    height: 12px;
}
#plist li a{
    display: inline-block;
	text-decoration:none;
    color:#333333;
    line-height: 12px;
    height: 12px;
}
#plist li a:hover{
	color:#FF6600;
}
/* パンくずリスト　終了 */

/* 価格表テーブル　開始 */

/* 共通 はがきの仕様テーブルレイアウト */
#main  table.common_table {
    background-color:#CCCCCC;
    width: 100%;
}
#main table.common_table th,#main table.common_table td {
    padding: 7px 10px 6px;
    line-height: 1.6;
    text-align: center;
}
#main table.common_table tr.tac th,#main table.common_table tr.tac td,#main table.common_table th.tac,#main table.common_table td.tac {text-align: center;}
#main table.common_table tr.tal th,#main table.common_table tr.tal td,#main table.common_table th.tal,#main table.common_table td.tal {text-align: left;}
#main table.common_table tr.tar th,#main table.common_table tr.tar td,#main table.common_table th.tar,#main table.common_table td.tar {text-align: right;}
#main table.common_table td {
    background-color:#FFF;
}
#main table.common_table tr.lg td {
    background-color:#f7f7f7;
}
#main table.common_table th {
    background-color:#DFE7EE;
}

/* 価格表テーブル　終了 */


/* トップヘ戻るボタン
---------------------------------------------- */
/* トップへボタン設定(スクロールで表示) */
.btn_top {
	position: fixed;
	width: 50px;
	height: 50px;
	/* right: 2%; */
    right: 30px;
	bottom: 4%;
	cursor: pointer;
	z-index: 5;
}
.btn_top a {
	position: relative;
	display: block;
	width: 50px;
	height: 50px;
	text-decoration: none;
    background:#ccc;
	border-radius: 5px;
}
.btn_top a::before {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: '\f0d8';
	font-size: 25px;
	color: #fff;
	line-height: 1em;
	text-align: center;
	position: absolute;
	width: 25px;
	height: 25px;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
@media (hover: hover) and (pointer: fine) {
    .btn_top a:hover {
        opacity: 0.7;
    }
}
/*このクラスが付与されると表示する*/
.active{
    opacity: 1;
    visibility: visible;
}
@media screen and (max-width: 750px) {
    .btn_top {
        width: calc(80 * 100vw / 750);
        height: calc(80 * 100vw / 750);
         right: 2%; 
        bottom: 9%;
    }
    .btn_top a {
        width: calc(80 * 100vw / 750);
        height: calc(80 * 100vw / 750);
        border-radius: calc(8 * 100vw / 750);
    }
    .btn_top a::before {
        font-size: calc(50 * 100vw / 750);
        width: calc(30 * 100vw / 750);
        height: calc(46 * 100vw / 750);
    }
}

/* -------------------------- MAIN END -------------------------- */


/* -------------------------- LEFT SIDE START -------------------------- */
#mpmenu, #smenu, #calendar-area {
    box-sizing: border-box;
    margin-bottom: 30px;
	width:180px;
}
/* 下層ページ　レイアウト調整 */
#container_sub #mpmenu, #container_sub #smenu, #container_sub #calendar-area {
	width:220px;
}
#smenu h3, #calendar-area h3 {
	color:#FFFFFF;
	background: #162f65;
	font-size: 108%;
	font-weight:bold;
	line-height: 100%;
	overflow:hidden;
	padding: 14px 0 12px 10px;
}
#smenu h3.smenu_choice {
	font-size: 124%;
	padding: 13px 10px 11px;
}

/* サイドメニュー　開始 */

/* 訴求BOX・コロナ緩和文例 */
.side_box_appeal,
#box_mitsumori,
#box_bunrei,
#box_noki {
    width:180px;
    text-align: center;
}
#box_mitsumori {
    margin-top: 30px;
}
#container_sub .side_box_appeal,
#container_sub #box_mitsumori,
#container_sub #box_bunrei,
#container_sub #box_noki {
    width:220px;
    text-align: center;
}
#smenu .side_box_appeal,
#box_mitsumori,
#box_bunrei,
#container_sub #box_bunrei,
#box_noki {
    margin-bottom:20px;
}
#smenu .side_box_appeal > p {
    margin-bottom: 10px;

}
#smenu .side_box_appeal > p:last-child {
    margin-bottom: 0;

}
#box_mitsumori a:hover,
#box_bunrei a:hover {
    transition-duration: 0.2s;
    opacity: .7;
}
#box_mitsumori img {
    width: 180px;
    height: auto;
    margin: 0 auto;
}
/*#smenu ul {
	border-bottom: 2px solid #162f65;
}*/
#smenu ul + h3 {
	margin-top: 30px;
}
/* 季節サイトバナー */
.side_box_pr p {
    width: 180px;
    margin:0 auto 20px;
}
.side_box_pr p img {
    width: 180px;
    height: auto;
}


/* ノーマル　開始 */
#smenu li {
    border-top: 1px solid #F5F5F5;
    position: relative;
    font-size: 14px;　　　　/* フォント調整は左記表示に変更する！　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
}
#smenu li:first-child {
    border-top: none;
}
#smenu li a{
    background: #fff;
	color:#333;
    box-sizing: border-box;
	display: block;
    font-size: 108%;
    line-height: 1;
	overflow: hidden;
	padding: 17px 0 15px 24px;
	text-decoration: none;
	width: 100%;
}
/* メニュー矢印 */
#smenu li a::before{
    content: "";
    display: block;
    position: absolute;
    top: 20px;
    left: 6px;
    width: 7px;
    height: 7px;
    border-top: 1px solid #162f65;
    border-right: 1px solid #162f65;
    transform: rotate(45deg);
}
/* メニュー別窓 */
#smenu li.blank a::after {
    background: url(../img/ico_blank.png) no-repeat;
    background-size: 14px 12px;
    content: "";
    display: block;
    position: absolute;
    top: 16px;
    right: 14px;
    width: 14px;
    height: 12px;
}

/* カレント・ホバー時　開始 */
#smenu li a:hover, #smenu li a.active{
	background: #e8e8e8;
	color: #162f65;
}
#smenu li a.active {
    font-weight: bold;
}
/* カレント・ホバー時 終了 */

/* 展開時　開始 */
#smenu li.opn {
    border-bottom: none;
}
#smenu li.opn a::before, #smenu li.opn a.active::before{
    left: 6px;
    top: 18px;
    transform: rotate(135deg);
}
/* 展開時　終了 */

/* サブリスト　開始 */
#smenu li.sub {
    border-top: 1px dashed #ccc;
}
#smenu li.sub a{
	padding-left: 40px;
}
#smenu li.sub a::before{
	left: 20px;
}
/* サブリスト　終了 */

/* ノーマル　終了 */

/* サイドメニュー　終了 */


/* ミツモリマスター　開始 */
/* サイドメニュー */
#box_mitsumorimaster,
#container_sub #box_mitsumorimaster {
	text-align: center;
    margin:20px 0 40px;
}
#box_mitsumorimaster{
	width: 180px;
}
#container_sub #box_mitsumorimaster{
	width: 220px;
}#box_mitsumorimaster img {
	box-shadow: 0 0 10px rgb(0 0 0 / 20%);
}
#box_mitsumorimaster a:hover{
    transition-duration: 0.2s;
    opacity: .7;
}

/* その他のミツモリマスター（旧） */
/*#btn_mitsumori {
	text-align: center;
	width: 180px;
}
#container_sub #btn_mitsumori {
	text-align: center;
	width: 220px;
}*/
/* ページ内ミツモリマスター */
/*#container_sub .btn_mitsumori {
	text-align: center;
}*/
#container_sub .btn_mitsumori img {
	width: 160px;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 20%);
}
#container_sub .btn_mitsumori a:hover img {
	opacity: .7;
}

div#contents_l #btn_mitsumori {
	margin-bottom: 30px;
}
#btn_mitsumori a {
	background: url(../img/btn_mitsumori.png) no-repeat 0 0;
	display: block;
	height: 72px;
    margin: auto;
	overflow: hidden;
	text-indent: -9999px;
	text-decoration: none;
	width: 160px;
}
#btn_mitsumori a:hover {
	background: url(../img/btn_mitsumori.png) no-repeat 0 -71px;
}
/* データ入稿のみ */
#btn_mitsumori.s_data a {
	background: url(../img/btn_mitsumori_data.png) no-repeat 0 0;
}
#btn_mitsumori.s_data a:hover {
	background: url(../img/btn_mitsumori_data.png) no-repeat 0 -71px;
}
/* ミツモリマスター　終了 */

/* バナーエリア */
#box_bnr {
    width:180px;
    text-align: center;
    margin:40px auto 40px;
}
#box_bnr a:hover{
    opacity: .7;
    transition-duration: 0.2s;
}

/* カレンダー　開始 */
#calendar-area .menu_bg {
	min-height:100%;
	position:relative;
	text-align: center;
	padding: 10px 0 15px;
	width: 180px;
    color: #666;
}
#calendar-area .menu_bg ul.cal_main li span {
    line-height: 14px;
}
#calendar-area .menu_bg .cal_businessday {
    font-size: 12px;
	width:154px;
	margin:10px auto 0;
	text-align:left;
}
#calendar-area .menu_bg .cal_businessday p {
	margin-bottom:10px;
	line-height:1.4em;
}
#calendar-area .menu_bg .cal_businessday p.box_idt {
	padding:0 !important;
	text-indent:-0.5em !important;
}
#calendar-area .menu_bg .cal_businessday p.box_idt span {
	letter-spacing: -0.001rem;
}
#calendar-area .menu_bg .cal_businessday .holiday_dest {
	padding:0 10px 0 5px;
	display:inline;
	line-height:20px;
	border-left:solid 30px;
}
#calendar-area .menu_bg .cal_businessday .today {
	padding:0 10px 0 5px;
	display:inline;
	line-height:20px;
}
#calendar-area .menu_bg .cal_businessday .holiday_dest {
	border-left-color:#ff94a79c;
}
#calendar-area .menu_bg .cal_businessday .today {
	color:#339900;
	font-weight:bold;
}
#calendar-area .menu_bg .cal_businessday .cal_reception {
    background: #edf0f5;
    font-size: 11px;
    margin-bottom: 0;
    padding: 5px 5px;
}
/* カレンダー　終了 */

/* カレンダー　下層ページ */
#container_sub #calendar-area .menu_bg {
    width: 220px;
}
#container_sub .menu_bg ul.cal_main {
    width: 182px;
}
#container_sub .menu_bg ul.cal_main li {
    width: 25px;
    height: 20px;
}
#container_sub #calendar-area .menu_bg .cal_businessday {
    width: 182px;
}

/* 下層ページ右サイド廃止に伴い、プライバシーマークを左サイドに移動 */
#gsign {
    margin-bottom: 30px;
}
/* -------------------------- LEFT SIDE MENU END -------------------------- */



/* -------------------------- RIGHT SIDE MENU START -------------------------- */

#side_r div {
    margin-bottom:10px;
}
#side_r div a {
    transition-duration: .3s;
}
#side_r div a:hover {
    opacity: .5;
}
#pmark,
#gsign,
#osmc {
    text-align:center;
    font-size:85%;
}
#pmark {
    margin-bottom: 40px;
}
#pmark img {
    width: 100px;
    height: auto;
}
#bnr_prize {
    background:url(../img/bnr_prize.gif) no-repeat;
    width:180px;
    height:90px;
    font-size:85%;
    line-height: 160%;
}
#bnr_media {
    background:url(../img/bnr_media.gif) no-repeat;
    width:180px;
    height:90px;
    font-size:85%;
    line-height: 160%;
}
#bnr_prize a, #bnr_media a {
    width:170px;
    height:60px;
    padding:30px 5px 0;
    display:block;
}

/* -------------------------- RIGHT SIDE MENU END -------------------------- */



/* -------------------------- SYSTEM START -------------------------- */

h5{
	font-size: 13px;
	background: #F0F0F0;
	padding: 3px 5px;
}
.box_tax {
	margin-bottom:20px;
	padding:10px;
	border:#000033 solid 1px;
	background:#FFC;
}
.box_att {
	padding:16px 20px;
	/*border:#D70C18 solid 1px;*/
	background:#FEE;
	color:#D70C18;
}
.box_tag {
	display:none;
}

/* -------------------------- SYSTEM END -------------------------- */



/* -------------------------- INFO・MENTE START -------------------------- */

/* お知らせ(information)
---------------------------------------------- */
.info_container { 
    margin-inline: auto;
    max-width: 1200px;
}
.info_area {
<<<<<<< HEAD
    display: flex;
=======
	display: flex;
>>>>>>> develop
    width: 100%;
}
.info_area :is(dt,dd,span,a) {
    font-family: "BIZ UDPGothic", "Noto Sans JP", sans-serif;
}
.info_area dt,
.info_area dd {
    padding: 7px 16px;
    box-sizing: border-box;
}
.info_area dt {
    background: #D70C18;
    color: #fff;
    font-size: 14px;
    letter-spacing: 0.1em;
    font-weight: bold;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1.35;
    flex-shrink: 0;
}
.info_area dd {
    background: #eeeeee;
    font-size: 14px;
    text-align: left;
    line-height: normal;
    width: 100%;
}
.info_area dd ul li {
    display: flex;
}
.info_area dd ul li+li {
    margin-top: 5px;
}
.info_area dd ul li span {
    padding-right: 15px;
    font-weight: 500;
    letter-spacing: .06em;
    font-family: korolev, sans-serif;
}
#main .info_area dd ul li a {
    color: #333;
    font-weight: bold;
    line-height: 1.4;
}
#main .info_area dd ul li a:hover {
    color: #ff9900;
}
@media screen and (max-width: 750px) { 
    #main .info_container { 
        margin-inline: auto;
        width: 100%;
    }
    #main .info_area {
        margin:calc(40 * 100vw / 750) auto;
        display: flex;
        width: 100%;
    }
    #main .info_area :is(dt,dd,span,a) {
        font-family: "BIZ UDPGothic", "Noto Sans JP", sans-serif;
    }
    #main .info_area dt,
    #main .info_area dd {
        padding: 0 calc(16 * 100vw / 750);
        box-sizing: border-box;
        font-size: calc(20 * 100vw / 750);
    }
    #main .info_area dt {
        letter-spacing: 0.1em;
        font-weight: bold;
        text-align: center;
        display: grid;
        place-items: center;
        line-height: 1.35;
        flex-shrink: 0;
        background: #D70C18;
        color: #fff;
    }
    #main .info_area dd {
        background: #eeeeee;
        text-align: left;
        line-height: normal;
        width: 100%;
    }
    #main .info_area dd ul li {
        display: flex;
        flex-direction: column;
        padding:calc(16 * 100vw / 750) 0;
    }
    #main .info_area dd ul li+li {
        border-top: calc(2 * 100vw / 750) solid #BFC0C0;
    }
    #main .info_area dd ul li span {
        letter-spacing: .06em;
        font-family: korolev, sans-serif;
    }
    #main .info_area dd ul li a {
        color: #333;
        font-weight: bold;
        line-height: 1.4;
    }
}


/* TOP 2020お知らせ改修/グループサイト共通 -------------------------------------------- */
/* #main .info_area {
    margin: 24px auto 12px;
	display: flex;
    width: 100%;
}
#main .info_area dt,
#main .info_area dd {
    padding: 7px 16px;
    box-sizing: border-box;
}
#main .info_area dt {
    background: #D70C18;
    color: #fff;
    font-size: 14px;
    letter-spacing: 0.1em;
    font-weight: bold;
    text-align: center;
    width: 120px;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1.35;
    flex-shrink: 0;
}
#main .info_area dd {
    background: #eeeeee;
    font-size: 14px;
    text-align: left;
    line-height: normal;
	width: 100%;
}
#main .info_area dd ul li {
	display: flex;
}
#main .info_area dd ul li+li {
    margin-top: 5px;
}
#main .info_area dd ul li span {
    padding-right: 15px;
	font-weight: 500;
	letter-spacing: .06em;
	font-family: korolev, sans-serif;
}
#main .info_area dd ul li a {
    color: #333;
    font-weight: bold;
	line-height: 1.4;
}
#main .info_area dd ul li a:hover {
    color: #ff9900;
} */
/* TOP お知らせコンテンツページ表示-------------------------------------------- */
/* #main .info_index{
	background: #F0F0F0;
	width: 787px;
	margin: auto;
	text-align: center;
	padding: 38px 0 35px;
	margin-bottom: 30px;
}
#main .info_index .info_index-ttl{
	font-size: 20px;
	font-weight: 700;
	line-height: 27.24px;
	margin-bottom: 14px;
	text-align: center;
	color: #D70C18;
}
#main .info_index .info_index-text{
	font-size: 16px;
	line-height: 21.79px;
	text-align: center;
}
#main .info_index .info_index-text a{
	text-decoration: none;
	color: #333;
} */
/* -------------------------- INFO・MENTE END -------------------------- */



/* -------------------------- APPEAL AREA START -------------------------- */

/* css reset */
#main #appeal_area p {
    margin: 0;
}
#container #appeal_area {
    box-sizing: border-box;
    padding:0 0 50px;
}
@media screen and (max-width: 750px) {
    #container #appeal_area {
        padding:0;
    }    
}
.info_area + .box_appeal {
    margin-top: 27px;
}
#main #appeal_area li {
    list-style: none !important;
}

/* TOP 訴求BOX 開始 */
#main #appeal_area .box_appeal {
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 28px 16px;
}
/* バナー2つの場合（見積もりバナー表示） */
#main #appeal_area .box_appeal {
    width: 1200px;
    margin: 30px auto 50px;
}
.mitsumori_display img {
    width: 600px;
    height: auto;
}
.mitsumori_display a {
    box-shadow: 0 0 10px rgb(0 0 0 / 20%);
}

#main #appeal_area .box_appeal li:not(:last-child) {
    margin-right: 15px;
}
#main #appeal_area .box_appeal li a {
    display: block;
}
#main #appeal_area .box_appeal li:last-child {
    
}

/* TOP 訴求BOX 終了 */

/* TOP 訴求バナー 開始 */
#main #appeal_area .bnr_area {
    margin: 0 auto 62px;
}
#main #appeal_area .bnr_area p {
    text-align: center;
}
#main #appeal_area .bnr_area img {
    box-shadow: 0 0 10px rgb(0 0 0 / 20%);
}
#main #appeal_area .bnr_area a:hover img {
    opacity: .7;
}


#main #appeal_area .bnr_area .bnr_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
#main #appeal_area .bnr_area .bnr_item:nth-child(2n) {
    margin-left: 20px;
}
#main #appeal_area .bnr_area .bnr_item:nth-child(n + 3) {
    margin-top: 20px;
}
#main #appeal_area .bnr_area img {
    vertical-align: bottom;
}
#main #appeal_area .bnr_area a {
    transition-duration: .3s;
}
#main #appeal_area .bnr_area a:hover {
    opacity: .7;
}
/* TOP 訴求バナー 終了 */


/* TOP オプションBOX 開始 */

/*#main #appeal_area #option_area {
    box-sizing: border-box;
    margin-top: 45px;
    text-align: center;
}
#main #appeal_area #option_area p.option_head {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 30px;
}
#main #appeal_area #option_area .option_list {
	display: flex;
	justify-content: center;
}
#main #appeal_area #option_area .option_item:not(:first-child) {
	margin-left: 20px;
}
li.option_item img{
    border-radius: 8px;
}
li.option_item a{
    display: block;
    width:auto;
    height:auto;
    box-sizing: border-box;
    border-radius: 8px;
    border: 3px solid transparent;
    transition-duration: 0.3s;
}
li.option_item a:hover{
    border: 3px solid  #1C2F61;
}*/

/* オプションBOX（文例ページ設定） */
/*#main #landing_area #appeal_area #option_area {
    margin-top: 30px;
}
#main #landing_area #appeal_area #option_area p.option_head {
    font-size: 16px;
    margin: 0 0 8px 80px;
    text-align: left;
}
#main #landing_area #appeal_area #option_area .option_list {
	margin: 0 0 20px;
}
#main #landing_area #appeal_area #option_area p.text_choose {
    font-size: 22px;
	font-weight: bold;
    line-height: 150%;
}
#main #landing_area #appeal_area #option_area p.text_choose::after {
    content: '▼';
    font-size: 30px;
    display: block;
    margin: 0 0 20px;

}*/
/* TOP オプションBOX　終了 */



/* 下層ランディングレイアウト 開始 */

/* landing.js 表示制御用 開始 */
#container_sub #landing_area {
    /* display: none;*/
}
/* landing.js 表示制御用 終了 */
/*#container_sub  #appeal_area p {
    width: 690px;
    margin:0 auto;
}*/

/*#container_sub  #appeal_area {
    background: no-repeat url(../img/bnr_introduction.png) bottom center;
    background-size: auto;
    box-sizing: border-box;
    height: 250px;
    margin: 30px auto;
    padding: 23px 26px 26px 30px;
    width: 690px;
}
#container_sub  #appeal_area #appeal-intro_area .appeal-intro_ttl {
    font-size: 25px;
    letter-spacing: -0.005em;
    line-height: 1.37;
}
#container_sub  #appeal_area #appeal-intro_area .appeal-intro_list {
    display: flex;
    display: -ms-flexbox;
    justify-content: space-between;
    -ms-flex-pack: justify;
    flex-wrap: wrap;
    margin: 12px 134px 14px 25px;
}
#container_sub  #appeal_area #appeal-intro_area .appeal-intro_list li {
    font-size: 15px;
    font-weight: bold;
    margin: 0 0 5px;
    width: 280px;
}
#container_sub  #appeal_area #appeal-intro_area .appeal-intro_list li:nth-of-type(2n) {
    width: 193px;
}

#container_sub  #appeal_area #appeal-option_area  .appeal-option_ttl {
    font-size: 15px;
    font-weight: bold;
}
#container_sub  #appeal_area #appeal-option_area ul.btn {
    display: flex;
    display: -ms-flexbox;
    justify-content: space-between;
    -ms-flex-pack: justify;
    margin-top: 6px;
    width: 461px;
}
#container_sub  #appeal_area #appeal-option_area ul.btn li {
    width: 85px;
}
#container_sub  #appeal_area #appeal-option_area ul.btn li a {
    background: #fff;
    border-radius: 3px;
    box-sizing: border-box;
    box-shadow: 0 1px 7px rgba(0, 0, 0, 0.2);
    color: #162f65;
    display: block;
    font-weight: bold;
    letter-spacing: .01em;
    padding: 6px 0 4px;
    text-align: center;
    text-decoration: none;
    width: 83px;
    border-radius: 5px;
}
#container_sub #appeal_area #appeal-option_area ul.btn li a:hover {
    color: #f96e13;
}
*/



/*#container_sub .appeal-cam_atena {
    font-size: 14px;
    font-weight: bold;
    margin: -18px 0 25px;
    text-align: center;
}
#container_sub .appeal-cam_atena a {
    color: #ff3300;
    text-decoration: none;
}
#container_sub .appeal-cam_atena a:hover {
    text-decoration: underline;
}*/

/* 下層ランディングレイアウト 終了 */

/* お問い合わせバナー 開始 */

/*#main .support_area {
    background: top center url("../img/bnr_support600x165.png") no-repeat;
    box-sizing: border-box;
    height: 165px;
    padding: 46px 0 0 140px;
    position: relative;
}
#container_sub #main .support_area {
    background: top center url("../img/bnr_support640x186.png") no-repeat;
    height: 186px;
    margin: 30px auto 20px;
    padding: 60px 0 0 178px;
    width: 640px;
}*/
/* css reset */
/*#main .support_area p {
    margin: 0;
}*/
/* css reset */
/* お問い合わせタイトル */
#main .support_area .support_ttl {
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0.005em;
}
/* お問い合わせテキスト */
/*#main .support_area .support_subttl {
    font-size: 15px;
    font-weight: bold;
    letter-spacing: 0.0005em;
    margin-top: 7px;
}
#container_sub #main .support_subttl {
    margin-top: 10px;
}*/

/* 電話番号 */
/*#main .support_area .support_tel {
    color: #333;
    display: inline-block;
    font-size: 27px;
    font-weight: bold;
    position: absolute;
    left: 182px;
    bottom: 32px;
}
#container_sub #main .support_area .support_tel {
    left: 219px;
    bottom: 37px;
}
#main .support_area .support_tel a {
    color: #333;
    line-height: 1;
    text-decoration: none;
}*/
/* 電話受付時間 */
/*#main .support_area .support_tel-time {
    font-size: 8px;
    font-weight: bold;
    letter-spacing: -0.06em;
    position: absolute;
    left: 143px;
    bottom: 11px;
}
#container_sub #main .support_area .support_tel-time {
    left: 177px;
    bottom: 18px;
}*/
/* 電話受付時間・数字 */
/*#main .support_area .support_tel-timeno {
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 0.05em;
}*/

/* お問い合わせフォーム */
/*#main .support_area a.support_toi {
    color: #333;
    display: inline-block;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: .005em;
    position: absolute;
    right: 22px;
    bottom: 33px;
}
#container_sub #main .support_area a.support_toi {
    right: 29px;
    bottom: 39px;
}

#main .support_area a.support_toi:hover {
    color: #f96e13;
}*/
/* お問い合わせバナー 終了 */


/* -------------------------- APPEAL AREA END -------------------------- */




/* お問い合わせ
---------------------------------------- */
#main .support_area {
    position: relative;
    width: 800px;
    height: 165px;
    margin: 0 auto;
    background: top center url("/common/img/bnr_support600x165.png") no-repeat;
    box-sizing: border-box;
    margin-bottom: 100px;
}
/* css reset */
#main .support_area p {
    margin: 0;
}
/* css reset */
/* お問い合わせタイトル */
#main .support_area .support_ttl {
    position: absolute;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0.005em;
    left: 238px;
    top: 45px;
}
/* お問い合わせテキスト */
#main .support_area .support_subttl {
    font-size: 15px;
    font-weight: bold;
    letter-spacing: 0.0005em;
    margin-top: 7px;
    position: absolute;
    left: 238px;
    top: 64px;
}
#container_sub #main .support_subttl {
    margin-top: 10px;
}
/* 電話番号 */
#main .support_area .support_tel {
    color: #333;
    display: inline-block;
    font-size: 27px;
    font-weight: bold;
    position: absolute;
    left: 280px;
    bottom: 30px;
}
/*#container_sub #main .support_area .support_tel {
    left: 219px;
    bottom: 37px;
}*/
#main .support_area .support_tel a {
    color: #333;
    line-height: 1;
    text-decoration: none;
}
/* 電話受付時間 */
#main .support_area .support_tel-time {
    font-size: 8px;
    font-weight: bold;
    letter-spacing: -0.06em;
    position: absolute;
    left: 241px;
    bottom: 10px;
}
/*#container_sub #main .support_area .support_tel-time {
    left: 177px;
    bottom: 18px;
}*/
/* 電話受付時間・数字 */
#main .support_area .support_tel-timeno {
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 0.05em;
}
/* お問い合わせフォーム */
#main .support_area .support_toi a {
    color: #333;
    display: inline-block;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: .005em;
    position: absolute;
    right: 122px;
    bottom: 32px;
}


@media screen and (max-width: 750px) {
    #main .support_area {
        position: relative;
        width: 100%;
        height: calc(489 * 100vw / 750);
        margin: 0;
        padding: 0;
        background: url("/sp/common/images/support/img_inq_s.webp") no-repeat;
        background-position: top calc(14 * 100vw / 750) right calc(50 * 100vw / 750);
        background-size: calc(261 * 100vw / 750) calc(246 * 100vw / 750) ;
        box-sizing: border-box;
        margin-bottom: calc(96 * 100vw / 750);
    }
    /* お問い合わせタイトル */
    #main .support_area .support_ttl {
        font-size: calc(36 * 100vw / 750);
        left: calc(30 * 100vw / 750);
        top: calc(30 * 100vw / 750);
    }
    /* お問い合わせテキスト */
    #main .support_area .support_subttl {
        font-size: calc(26 * 100vw / 750);
        font-weight: normal;
        margin-top: 0;
        position: absolute;
        left: calc(30 * 100vw / 750);
        top: calc(156 * 100vw / 750);
    }
    #main .support_area .suport_inner {
        width: 100%;
        height: calc(243 * 100vw / 750);
        padding: calc(50 * 100vw / 750) 0 0 ;
        background: #EEE;
        position: relative;
        left: 0;
        top: calc(258 * 100vw / 750);
        text-align: center;
        box-sizing: border-box;
    }
    /* 電話番号 */
    #main .support_area .support_tel {
        font-size: calc(58 * 100vw / 750);
        margin-left: calc(30 * 100vw / 750);
        position: unset;
    }
    #main .support_area .support_tel a {
        position: relative;
    }
    #main .support_area .support_tel a::before {
        content: "";
        width: calc(44 * 100vw / 750);
        height: calc(48 * 100vw / 750);
        background: url(/sp/common/images/support/ico_tel_s.webp) no-repeat;
        background-size: contain;
        position: absolute;
        top: calc(17 * 100vw / 750);
        left: calc(-58 * 100vw / 750);
    }
    /* 電話受付時間 */
    #main .support_area .support_tel-time {
        font-size: calc(19 * 100vw / 750);
        font-weight: normal;
        margin: 0 0 calc(20 * 100vw / 750);
        position: unset;
    }
    /* 電話受付時間・数字 */
    #main .support_area .support_tel-timeno {
        font-size: calc(19 * 100vw / 750);
        font-weight: normal;
    }
    /* お問い合わせフォーム */
    #main .support_area .support_toi {
        margin-left: calc(35 * 100vw / 750);
        position: unset;
    }
    #main .support_area .support_toi a {
        font-size: calc(38 * 100vw / 750);
        position: relative;
        right: 0;
        bottom: 0;

    }
    #main .support_area .support_toi a::before {
        content: "";
        width: calc(56 * 100vw / 750);
        height: calc(37 * 100vw / 750);
        background: url(/sp/common/images/support/ico_mail_s.webp) no-repeat;
        background-size: contain;
        position: absolute;
        top: calc(10 * 100vw / 750);
        left: calc(-70 * 100vw / 750);
    }
}




/* 共通設定
---------------------------------------- */
/* 見出し設定*/
.title_header_h1 {
    font-size: 28px;
    margin: 36px 0 56px;
}
.title_header_h2 {
    font-size: 22px;
    background: #1C2F61;
    color: #FFF;
    margin-bottom: 36px;
    padding: 20px 16px;
}
.title_header_h3 {
    font-size: 18px;
    background: #EEE;
    margin-bottom: 32px;
    padding: 12px;
}
.title_header_h4 {
    font-size: 16px;
    border-bottom: 1px solid #333;
    margin-bottom:28px;
    padding: 8px 0;
}
.title_middle {
    font-size: 24px;
    margin-bottom: 36px;
}
.title_small {
    font-size: 16px;
    font-weight: bold;
    margin-bottom:28px;
}
.title_header_h1,
.title_header_h2,
.title_header_h3,
.title_header_h4,
.title_middle,
.title_small {
    line-height: 1.5;
    letter-spacing: 0.1em;
}
/*　注釈・強調　*/
.caution,
.caution_bold,
.caution_red,
.caution_bold_red{
    font-size: 14px;
    letter-spacing: 0.08em;
    line-height: 1.75;
	padding-left:1.5em;
	text-indent:-1.5em;
}
.caution::before,
.caution_bold::before,
.caution_red::before,
.caution_bold_red::before {
    content:"※ ";
}
.caution_bold,
.caution_bold_red,
strong.-bold,
strong.-bold_red,
.-bold,
.-bold_red {
    font-weight: bold;
}
strong.-red {
    font-weight: normal;
}
.caution_red,
.caution_bold_red,
strong.-red,
strong.-bold_red,
.-bold_red,
.-red {
    color: #D70C18;
}
/* リンク矢印 */
.link_arrow {
    display: flex;
    align-items: center;
    gap: 0 4px;
}
.link_arrow::before {
    content: "";
    width: 14px;
    height: 14px;
    background: url(https://nenga.aisatsujo.jp/group_common/images/link/img_arrow_y.webp) 0 0 no-repeat;
    background-size: cover;
}


@media screen and (max-width: 750px) {
    /* 見出し設定*/
    .title_header_h1 {
        font-size: calc(44 * 100vw / 750);
        margin: calc(42 * 100vw / 750) 0 calc(62 * 100vw / 750);
        padding-left: calc(30 * 100vw / 750);
    }
    .title_header_h2 {
        font-size: calc(36 * 100vw / 750);
        margin-bottom: calc(30 * 100vw / 750);
        padding: calc(30 * 100vw / 750) 0 calc(30 * 100vw / 750) calc(24 *100vw / 750);
    }
    .title_header_h3 {
        font-size: calc(32 * 100vw / 750);
        margin-bottom: calc(48 * 100vw / 750);
        padding: calc(24 * 100vw / 750) 0 calc(24 * 100vw / 750) calc(24 * 100vw / 750);
    }
    .title_header_h4 {
        font-size: calc(28 * 100vw / 750);
        margin-bottom: calc(30 * 100vw / 750);
        padding: calc(16 * 100vw / 750) 0;
    }
    .title_middle {
        font-size: calc(40 * 100vw / 750);
        margin-bottom: calc(48 * 100vw / 750);
    }
    .title_small {
        font-size: calc(28 * 100vw / 750);
        margin-bottom: calc(30 * 100vw / 750);
    }
    /*　注釈　*/
    .caution,
    .caution_bold,
    .caution_red,
    .caution_bold_red {
        font-size: calc(24 * 100vw / 750);
    }
}

