@font-face {
	font-family: 'Typicons';
	src: url('../../common/fonts/typicons-regular-webfont.eot');
	src: url('../../common/fonts/typicons-regular-webfont.eot?#iefix') format('embedded-opentype'),
		url('../../common/fonts/typicons-regular-webfont.woff') format('woff'),
		url('../../common/fonts/typicons-regular-webfont.ttf') format('truetype'),
		url('../../common/fonts/typicons-regular-webfont.svg#TypiconsRegular') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* タイポグラフィ 
------------------------------*/
#main h1,#main h2{
  margin: 0;
  padding: 0;
  line-height: normal;
  background: none;
  border: 0;
}

#main header.title {
  margin-bottom: 0;
  padding: calc(44 * 100vw / 750) calc(12 * 100vw / 750) calc(20 * 100vw / 750);
}
#main header.title .t{
  font-size: calc(40 * 100vw / 750);
  line-height: 1.7;
  letter-spacing: .02em;
  color: #333;
}
#main header.title .h_sub{
  display: block;
  font-size: calc(30 * 100vw / 750);
}
.font_r_b{
  font-weight: bold;
  color: #D70C18;
  display: block;
}
@media screen and (min-width:920px){
#main header.title {
  padding:22px 6px 6px;
}
#main header.title .t{
  font-size: 24px;
}
#main header.title .h_sub{
  font-size:18px;
}
}

/* ボタン 
------------------------------*/
.btn_area {
  margin:calc(20 * 100vw / 750) auto 0;
  text-align: center;
}
.btn_order {
  width: 80%;
  border-radius: 6px;
  background: #F19D38;
  color: #FFF;
  padding:calc(30*100vw/750) 0;
  border: none;
  box-shadow: none;
  text-shadow: none;
  font-size:calc(28*100vw/750);
  font-weight: bold;
  position: relative;
}
.btn_order p {
  display: flex;
  justify-content: center;
  align-items: center;
}
#main .btn_g-arrow {
  width: calc(36 * 100vw / 750);
  height: calc(36 * 100vw / 750);
  display: inline-block;
  background: #fff;
  border-radius: 50%;
  position: relative;
}
#main .btn_g-arrow::after{
  position: absolute;
  content: "";
  top: 50%;
  left: calc(20 * 100vw / 750);
  transform: translate(-50%, -50%);
  width: calc(14 * 100vw / 750);
  height: calc(18 * 100vw / 750);
  background-color: #F19D38;
  clip-path: polygon(0 0, 0 100%, 100% 50%);
}
/*簡単お見積り*/
.mitsumori {
  background: #23AF3C;
  border-radius: 50px;
  width: auto;
  text-align: center;
  padding:calc(10 * 100vw / 750) calc(5 * 100vw / 750);
  margin-top: 8px;
  box-sizing: border-box;
}
.mitsumori a{
  color: #ffffff;
  cursor: pointer;
  text-decoration: none;
}
.mitsumori p {
  font-size: calc(20 * 100vw / 750);
  font-weight: bold;
}
#main .mitsumori .btn_g-arrow {
  width: calc(20 * 100vw / 750);
  height: calc(20 * 100vw / 750);
}
#main .mitsumori .btn_g-arrow::after {
  width: calc(11 * 100vw / 750);
  height: calc(13 * 100vw / 750);
  background: #23AF3C;
  left: calc(5 * 100vw / 750);
  top: calc(5 * 100vw / 750);
  transform: rotate(90deg);
}
@media screen and (min-width:920px){
	.btn_order {
		padding: 20px 30px 20px 20px;
		font-size: 18px;
	}
#main .btn_g-arrow {
    width:20px;
    height:20px;
}
#main .btn_g-arrow::after{
    left: 11px;
    width: 8px;
    height: 11px;
}
  /*簡単お見積り*/
  .mitsumori {
    padding: 5px;
    margin-top: 8px;
}
  .mitsumori p {
    font-size:14px;
}
#main .mitsumori .btn_g-arrow {
  width: 15px;
  height: 15px;
  top: 2px;
  left: 5px;
}
#main .mitsumori .btn_g-arrow::after {
  width: 7px;
  height: 11px;
  left: 4px;
  top: 3px;
}
}

/* レイアウト 
------------------------------*/
/*上部はがき表示部分*/
.detail_head {
  background-color: #f5f5f5;
  padding: calc(20 * 100vw / 750) 0;
  margin-bottom: 5px;
  text-align: center;
}
.detail_head .hagahi_img{
  border: #CCC solid 1px;
  vertical-align: bottom;
  width: clamp(60%, 3vw, 70%);
  margin-bottom: calc(15 * 100vw / 750);
}
/*＜ 商品一覧へもどる ＞*/
#jump {
  height: calc(78 * 100vw / 750);
  line-height: calc(78 * 100vw / 750);
  background: #EEE;
  position: relative;
  text-align: center;
  margin-bottom: calc(20 * 100vw / 750);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 calc(20 * 100vw / 750);
}
#jump a {
  text-decoration: none;
  color: #666;
}
#jump .btn_list {
  font-weight: bold;
}
@media screen and (min-width:920px){
  /*上部はがき表示部分*/
  .detail_head {
  padding:10px 0;
}
  .detail_head .hagahi_img{
  margin-bottom:10px;
  min-width: auto;
  width: auto;
}
  /*＜ 商品一覧へもどる ＞*/
#jump {
  height: 48px;
  line-height: 48px;
  margin-bottom: 30px;
  padding: 0 10px;
}
#jump .btn_list {
  font-size: 18px;
}
}

/*デザインのポイント*/
#comment {
  display: flex;
  column-gap: calc(20 * 100vw / 750);
  padding: 0.5em;
  border: var(--color-sub-base) solid calc(2 * 100vw / 750);
  border-radius: calc(6 * 100vw / 750);
}
#d_icon {
  width: calc(150 * 100vw / 750);
  flex-shrink: 0;
}
#d_icon img {
  border: 1px solid #ddd;
  box-sizing: border-box;
}
#d_name {margin-bottom:calc(15 * 100vw / 750);}
#d_name .ttl{
  font-weight: bold;
  font-size: calc(15 * 100vw / 750);
}
#d_name .name{
  font-weight: bold;
  font-size: calc(22 * 100vw / 750);
}
#d_point dt {
  font-weight: bold;
  color: var(--color-sub-base);
  line-height: 1;
  margin-bottom: calc(6 * 100vw / 750);
}
@media screen and (min-width:920px){
#comment {
  column-gap: 15px;
  border-radius:6px;
  padding: 1em;
  border-width: 2px;
}
#d_icon {
  width:100px;
}
#d_name {margin-bottom:10px;}
#d_name .ttl{
  font-size: 14px;
}
#d_name .name{
  font-size:18px;
}
#d_point dt {
    margin-bottom:6px;
    font-size:18px;
}
}
/*納期*/
.ship_out_day{
  font-size: calc(40 * 100vw / 750);
  font-weight: bold;
  margin: 0 0 calc(10 * 100vw / 750);
}
.ship_box {
  font-family: "BIZ UDPGothic", sans-serif;
  margin-bottom: calc(10 * 100vw / 750);
}
.ship_inner {
  display: flex;
  align-items: center;
  height: calc(100 * 100vw / 750);
  border: calc(4 * 100vw / 750) solid #32C351;
  box-sizing: border-box;
}
.ship_inner dt {
  background: #32C351;
  color: #fff;
  font-weight: bold;
  padding: 0 calc(25 * 100vw / 750);
  flex-shrink: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.ship_inner dd {
  font-weight: bold;
  text-align: center;
  display: block;
  width: 100%;
  font-size: calc(40 * 100vw / 750);
}
@media screen and (min-width:920px){
  .ship_out_day {
    font-size: 20px;
    margin-bottom: 10px;
}
  .ship_box {
    margin-bottom: 10px;
}
  .ship_inner {
    height: 80px;
    border:2px solid #32C351;
}
  .ship_inner dt {
    padding: 0 1em;
    height: 100%;
    font-size: 20px;
    line-height: 130%;
    letter-spacing: 0.08em;
}
  .ship_inner dd {
  font-size: 24px;
}
}

/* お得なキャンペーン 
------------------------------*/
.contain_box ul {
  display: flex;
  flex-direction: column;
  gap: calc(4 * 100vw / 750);
  font-weight: bold;
  color: #D70C18;
}
.contain_box ul li {
  font-family: "BIZ UDPGothic", sans-serif;
  font-size: calc(35 * 100vw / 750);
}
.contain_box ul span{
  color: #333;
}
@media screen and (min-width:920px){
  .contain_box ul li {
  font-size: 20px;
}
  .contain_box ul span {
  font-size: 16px;
}
}

/* 商品情報 
------------------------------*/
#info_ddate dl {
  display: flex;
  align-items: center;
  padding:calc(20 * 100vw / 750) 0;
  border-bottom: 1px dotted #C9C9C9;
}
#info_ddate dt{
  min-width: 7em;
  margin-left: 10px;
  color: var(--color-sub);
  font-weight: bold;
}
#info_ddate dd .s_price{
  letter-spacing: normal;
}
@media screen and (min-width:920px){
#info_ddate dl {
  padding:20px 0;
}
#info_ddate dt{
  margin-left: 10px;
}
}
/* カンタン見積もり
------------------------------*/
#estimate dl {
  margin:0 auto calc(10 * 100vw / 750);
  width: 95%;
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  padding:calc(20 * 100vw / 750) 0;
  border-bottom: 1px dotted #C9C9C9;
}
#estimate dt {
  min-width: 7em;
}
#estimate dd {
  font-family: "BIZ UDPGothic", sans-serif;
  text-align: center;
  margin-bottom:calc(10 * 100vw / 750);
  width: calc(100% - 7em);
}
#estimate select {
  width: 100%;
  padding:calc(10 * 100vw / 750);
  border-color: #C9C9C9;
  border-radius:calc(6 * 100vw / 750);
}

button.estimate_button {
  width: 96%;
  margin: 0 2% calc(20 * 100vw / 750);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: calc(6 * 100vw / 750);
  font-weight: bold;
  cursor: pointer;
  padding:calc(15 * 100vw / 750) 0;
  background: #FFF;
  color: var(--color-sub);
  border:calc(2 * 100vw / 750) solid var(--color-sub);
  font-size: calc(30 * 100vw / 750);
}
.estimate_result_dummy {
  width: 96%;
  margin: 0 2%;
  min-height: 200px;
  font-weight: bold;
  color: #333;
  background: #f4f5f0;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
#estimate_result table {
  width: 96%;
  border: 2px solid #CCC;
  margin: 0 auto calc(10 * 100vw / 750);
}
#estimate_result table tr{
  border-bottom: 1px solid #CCC;
}
#estimate_result table th,#estimate_result table td {
  padding: calc(5 * 100vw / 750) calc(15 * 100vw / 750);
}
#estimate_result table td {
  text-align: right;
}
#estimate_result #total,
#estimate_result .caution {
  background: #FFEBA3;
  border: 0;
  font-weight: bold;
}
#estimate_result #total {
  font-size: calc(20 * 100vw / 750);
}
#estimate_result #total th{
  font-weight: bold;
}
#estimate_result td.caution {
  font-size:calc(12 * 100vw / 750);
  text-align: right;
  border-bottom: none;
  line-height:calc(24 * 100vw / 750);
}
@media screen and (min-width:920px){
#estimate_result table th, #estimate_result table td {
  padding: 10px;
}
#estimate dl {
  margin-bottom: 30px;
  padding: 0;
}
#estimate dd {
  margin-bottom: 10px;
}
#estimate select {
  padding: 7px 10px;
  border-radius: 5px;
  font-size: 18px;
}
  button.estimate_button {
  font-size: 16px;
  padding: 15px 0;
  border-width: 2px;
  border-radius: 5px;
  margin-bottom: 20px;
}

#estimate_result #total {
    font-size: 15px;
}
#estimate_result td.caution {
    font-size: 12px;
    line-height: 12px;
    padding-top: 0;
}
#estimate_result table {
  margin-bottom: 10px;
  width: 100%;
}
}


/*お見積り内マイページログイン表示*/
.estimate_result_mypage{
width:95%;
margin:0 auto;
background: #FAF6EA;
padding:calc(19 * 100vw / 750) 1em;
text-align: center;
}

.estimate_result_mypage dt{
  color: #D70C18;
  font-size: calc(30 * 100vw / 750);
  font-weight: bold;
  margin: 0;
}
.estimate_result_mypage dd{
font-weight:bold;
color:#666666;
}
.estimate_result_mypage dd span{
margin-right:calc(10 * 100vw / 750);
}
.estimate_result_mypage dd#btn_mypage{
margin-top:calc(5 * 100vw / 750);
}
.estimate_result_mypage dd#btn_mypage a{
	display: inline-block;
	background:var(--color-sub);
	color: #FFF;
	font-weight: normal;
	text-decoration: none;
	padding:calc(2 * 100vw / 750) calc(10 * 100vw / 750);
	line-height: 160%;
	border-radius:calc(3 * 100vw / 750);
}
.estimate_result_mypage dd#btn_mypage a:hover{
filter: alpha(opacity=70);
-moz-opacity: 0.7;
opacity: 0.7;
}

@media screen and (min-width:920px){
  .estimate_result_mypage {
  padding: 1em;
}

  .estimate_result_mypage dt {
  font-size: 20px;
}
  .estimate_result_mypage dd#btn_mypage a {
  border-radius: 3px;
  padding: 2px 10px;
}
  .estimate_result_mypage dd#btn_mypage {
  margin-top: 5px;
}
}

/* お客様のこえ
------------------------------*/
#main #voice{
  margin-bottom:calc(60 * 100vw / 750);
}
#voice p{
  padding:calc(20 * 100vw / 750) 0;
  border-bottom: 1px dotted #C9C9C9;
}
@media screen and (min-width:920px){
#main #voice{
  margin-bottom: 60px;
}
#voice p{
  padding:20px 0;
}
}


.select_area .link{
  justify-content: center;
}
/* 非登録商品用制御 
------------------------------*/
#main .guidance,
#main #android_lower,
#main #android_browser {
  padding: 10px;
  background: #FFDDDD;
  display: none;
}

#main #android_lower,
#main #android_browser {
  margin-bottom: 20px;
}

#main #android_browser button {
  padding: 10px;
}

#main #android_browser button a {
  text-decoration: none;
}

#main .guidance>p,
#main #android_lower>p,
#main #android_browser>p {
  font-weight: bold;
  color: #D70C18;
}

#main #android_lower>p,
#main #android_browser>p {
  text-align: left;
}

#main .guidance dl,
#main #android_lower dl {
  padding: 10px;
  background: #FFF;
  text-align: left;
}

#main .guidance dt,
#main #android_lower dt {
  font-weight: bold;
  margin-bottom: 5px;
}

#main .guidance dd ul,
#main #android_lower dd ul {
  padding: 0;
}

#main .guidance dd li,
#main #android_lower dd li {
  font-size: 86%;
  padding-left: 1.3em;
  text-indent: -1.3em;
}
/*　iOS8注意書き　*/
#for_ios8 {
  display: none;
  margin-bottom: 20px;
}

#for_ios8 dl {
  padding: 10px;
  background: #FFBFBF;
  text-align: left;
}

#for_ios8 dt {
  font-weight: bold;
  margin-bottom: 10px;
}