@charset "utf-8";

#main_contents { width:800px; margin:0 auto; padding:60px 0 100px; }

/* ------------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
------------------------------------------------------------------------------------ */
@font-face {
  font-family: 'design_plus';
  src: url('fonts/design_plus.eot?v=1.6');
  src: url('fonts/design_plus.eot?v=1.6#iefix') format('embedded-opentype'),
       url('fonts/design_plus.woff?v=1.6') format('woff'),
       url('fonts/design_plus.ttf?v=1.6') format('truetype'),
       url('fonts/design_plus.svg?v=1.6#design_plus') format('svg');
  font-weight: normal;
  font-style: normal;
}


/* ----------------------------------------------------------------------
 reset css
---------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video
 { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block; }
html { overflow-y: scroll; -webkit-text-size-adjust:100%; }
ul, ol { list-style:none; }
blockquote , q { quotes:none; }
blockquote:before, blockquote:after, q:before, q:after { content:''; content: none; }
a:focus { outline:none; }
ins { text-decoration:none; }
mark { font-style:italic; font-weight:bold; }
del { text-decoration:line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
table { border-collapse:collapse; border-spacing:0; width:100%; }
hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:3em 0; padding:0; }
button, input, select, textarea { outline:0; -webkit-box-sizing:border-box; box-sizing:border-box; font-size:100%; }
input, textarea { background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0)); -webkit-appearance: none; border-radius:0; /* Removing the inner shadow, rounded corners on iOS inputs */ }
input[type="checkbox"]{ -webkit-appearance: checkbox; }
input[type="radio"]{ -webkit-appearance: radio; }
button::-moz-focus-inner, input::-moz-focus-inner { border:0; padding:0; }
iframe { max-width:100%; }


/* ----------------------------------------------------------------------
 header
---------------------------------------------------------------------- */

.ht_header, .dc_header {
  width:100%;
  max-width:800px;
  margin:auto;
  display: flex;
  align-items: center;
  height:70px;
}

.top_link_bt a {
  color: #8e5520 !important;
}
.top_link_bt {
display:inline-block !important;
margin-left:15px;
margin-right:10px;
padding:5px;
background-color:#fff;
text-align:center;
display:block;
color: #8e5520 !important;
font-weight: bold;
width:80px;
height: 40px;
border: 1px solid #8e5520;
border-radius: 10px;
font-size:17px;
}
.top_link_bt .bt_s {
line-height:2;
font-size:9px;
}
#header_com, .header_com {
font-size:13px;
}

.ht_header {
  background-color:#fff8d8;
}
.dc_header {
  background-color:#feeae8;
}

/* ----------------------------------------------------------------------
 page-title
---------------------------------------------------------------------- */
#container h2 {
  margin:30px 0 10px;
  text-align:center;
}

/* ----------------------------------------------------------------------
 footer
---------------------------------------------------------------------- */

footer#footer {display:none;}
#main_contents  p {padding: 0;}  
#main_contents { margin:0 auto; padding:0 0 100px; }


/* ----------------------------------------------------------------------
 form
---------------------------------------------------------------------- */

.wpcf7 .wpcf7-list-item {
display:inline-block;
}
.wpcf7 textarea {
height:100px;
}
/*確認ボタン　チェック時のフォーム画像*/
.wpcf7c-conf {
  background-color:#e8f0fe !important;
}
input[type="radio"].wpcf7c-conf, input[type="checkbox"].wpcf7c-conf {
  background-color:#9CC0FF !important;
}
input[type=checkbox].blue,input[type=radio].blue {
    border: 2px solid #2196f3;
}
input[type=checkbox].wpcf7c-conf:checked,input[type=checkbox].wpcf7c-conf:indeterminate,input[type=radio].blue:checked:before {
    background: #2196f3;
}

.wpcf7 .wpcf7-previous {
  display:block;
  position:relative;
  width:225px;
  height:48px;
  margin: 20px auto;
  
  color:#fff;
  background-color:#999999;
  outline:none;
  border:none !important;
  font-size:14px;
  line-height:1.5;
  text-align:center;
  text-decoration:none;
  box-sizing:border-box;

  cursor:pointer;
  transition:all .3s;
}

.post_content .wpcf7 form .wpcf7-response-output {
  margin-top: -5.4em;
  margin-bottom: 3em;
}

body { font-family:Arial,sans-serif; font-size:14px; line-height:1; width:100%; position:relative; -webkit-font-smoothing:antialiased; }
.pc body.admin-bar { padding-top:32px; }
a { text-decoration:none; }
a, a:before, a:after, input {
  -webkit-transition-property:background-color, color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  transition-property:background-color, color; transition-duration:0.2s; transition-timing-function:ease;
}
.clear { clear:both; }
.hide { display:none; }


/* レイアウト */
#container { position:relative; height:100%; }
body.single-post #main_contents { padding-bottom:90px; }

/* ----------------------------------------------------------------------
 WordPress プリセットスタイル
---------------------------------------------------------------------- */
/* alignment */
.post_content .alignright { float:right; }
.post_content .alignleft { float:left; }
.post_content .aligncenter { display:block; margin-left:auto; margin-right:auto; margin-bottom:7px; }
.post_content blockquote.alignleft, .post_content img.alignleft { margin:7px 24px 7px 0; }
.post_content .wp-caption.alignleft { margin:7px 14px 7px 0; }
.post_content blockquote.alignright, .post_content img.alignright { margin:7px 0 7px 24px; }
.post_content .wp-caption.alignright { margin:7px 0 7px 14px; }
.post_content blockquote.aligncenter, .post_content img.aligncenter, .post_content .wp-caption.aligncenter { margin-top:7px; margin-bottom:7px; }


/* text and headline */

.post_content p { line-height:2.0em; margin:0 0 2em 0; }
.post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 { clear:both; line-height:1.4;  margin:0 0 10px 0; padding:10px 0 0 0; }
.post_content h1 { font-size:150%; }
.post_content h2 { font-size:140%; }
.post_content h3 { font-size:130%; }
.post_content h4 { font-size:120%; }
.post_content h5 { font-size:110%; }
.post_content h6 { font-size:100%; }


/* image */
.post_content img[class*="align"], .post_content img[class*="wp-image-"], .post_content img[class*="attachment-"], .post_content img.size-full, .post_content img.size-large, .post_content .wp-post-image, .post_content img
 { height:auto; max-width:100%; }


/* list */
.post_content li, .post_content dt, .post_content dd { line-height:2.2; }
.post_content ul, .post_content ol, .post_content dl { margin-bottom:24px; }
.post_content ol { list-style:decimal outside none; margin-left:1.5em; }
.post_content ul { list-style:circle outside none; margin-left:1.3em; }
.post_content li > ul, .post_content li > ol { margin-bottom:0; }
.post_content dt { font-weight:bold; }
.post_content dd { margin-bottom:1em; }


/* table */
/*.post_content table { margin:24px 0; width:100%; }*/
.post_content table { margin:0; width:100%; }
.post_content td, .post_content th { border:1px solid #ccc; padding:10px 15px; line-height:2.2; background:#fff; }
.post_content th { background:#f2f2f2; font-weight:normal; }
.colm2_cell { text-align:left;}
/* table style */
.post_content table.table_no_border th, .post_content table.table_no_border td { border:none; padding-left:0; }
.post_content table.table_border_horizontal th, .post_content table.table_border_horizontal td { border-left:none; border-right:none; padding-left:0; }
body.light_color .post_content td, body.light_color .post_content th { border:1px solid #ccc; background:#fafafa; }
body.light_color .post_content th { background:#eee; }


/* block quote */
.post_content blockquote { margin:0 0 25px 0; padding:27px 30px 0; background:#fff; border:1px solid #ccc; box-shadow:0px 4px 0px 0px #f8f8f8; position:relative; }
.post_content blockquote:before { content: '"'; font-style:italic; font-size:30px; font-weight:normal; line-height:40px; width:30px; height:30px; position:absolute; top:5px; left:10px; color:#5cbcd7; }
.post_content blockquote:after { content: '"'; font-style:italic; font-size:30px; font-weight:normal; text-align:left; line-height:60px; width:30px; height:30px; position:absolute; bottom:7px; right:-2px; color:#5cbcd7; }
.post_content blockquote cite { border-top:1px dotted #aaa; display:block; padding:20px 0 0 0; font-style:italic; text-align:right; font-size:90%; }


/* ------------------------------------------------------------------------------------
追加共有CSS
------------------------------------------------------------------------------------ */

aside, fieldset {
margin-top:20px;
margin-bottom:20px;
padding:30px 30px;
-webkit-box-shadow: 6px 6px 15px -2px rgba(0,0,0,0.06); 
box-shadow: 6px 6px 15px -2px rgba(0,0,0,0.06);
background-color:#fff;
}

aside {
  padding:20px 20px;
  line-height:2;
  background-color:#fff;
  border-radius: 15px;
}
.post_content aside p {
  margin:0;
}
aside dl {
  margin:5px !important;
}
aside dd, aside dt{
  line-height:inherit !important;
  margin:0 !important;
}

legend {
  display:contents;
  font-size:1.2rem;
  font-weight:bold;
}

input[type="radio"] {
  margin-top:13px ;
}

/* clearfix */
.clearfix::after { display:block; clear:both; content:""; }

/*flexbox*/
.flexbox {display:flex;flex-wrap:wrap;}

/*サイズ*/
.w50pa {width:50%;}

.mb10{margin-bottom:10px}


/*注意書き*/
.attention {
  color:#f18338 !important;
}
.attention a {
  color:#f18338 !important;
  text-decoration: underline;
}
.attention a:hover {
  text-decoration: underline !important;
}

.red-text {
  color: #f00;
}
.deadline-note {
  padding-top: 12px;
}
.deadline-note strong {
  font-size: 130%;
}

.row-buttons input[type="radio"]:not(:first-of-type) {
  margin-left: 25px;
}

/*PDFファイル*/
a[href$=".pdf"]::after, a.pdf-icon::after {
    content:" ";
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url(https://www.adobe.com/content/dam/cc/en/legal/images/badges/PDF_24.png) no-repeat;
    vertical-align: middle;
}

/*横幅を半分に*/
.w50p {
 width:50% !important;
}
/*横幅を30%に*/
.w30p {
  width:30%  !important;
  margin:5px 10px;
}

@media screen and (max-width: 767px) {
  .w50p {
 width:100% !important;
}
  .w30p {
  width:80% !important;
  margin:10px;
  }
}

/*必須マーク*/
.post_content h3 {
 vertical-align: middle;
}
.h3-text {
 vertical-align: middle;
}
span.requied {
 vertical-align:middle;
 line-height: inherit;
 font-size: 12px;
 color: #fff;
 background-color: #f00;
 margin-right: 8px;
 border-radius: 3px;
 padding: 2px 4px;
}
span.requiednone {
 vertical-align:middle;
 margin-left: 56px;
}

span.recommended {
 vertical-align:middle;
 line-height: inherit;
 color: #fff;
 background-color: #707070;
 margin-left: 20px;
 border-radius: 3px;
 padding: 2px 10px;
}

/*小文字備考*/
.note {
margin-top:5px;
margin-bottom:5px;
display:inline-block;
padding-left:10px;
font-weight: normal; 
color:#000000;
/*font-size:14px;*/
font-size:0.8754rem;
line-height:1.4;
}

/*リストなどのタイトルブロック化*/
.ttl-block td {
 width:50%;
 padding:0;
}
.ttl-block ul {
 list-style:none;
 margin:0;
}
.ttl-block li:first-child{
 background-color: #f2f2f2;
 border-bottom: solid 1px #ccc;
}
.ttl-block li {
 padding:15px;
 text-align: center;
}
@media screen and (max-width: 767px){
 .ttl-block td {
  display:block;
  margin-bottom:10px;
  width:100%;
 }
  .ttl-block {
    width:100%;
  }
}

/*スマホの場合改行*/
br.sp {display:none;}
@media screen and (max-width: 767px){
br.sp {display:inline;}
}

/*PCの場合inline*/
.pcinline_spblock {
  display:inline;
}
@media screen and (max-width: 767px){
.pcinline_spblock {display:block;}
}

/* ------------------------------------------------------------------------------------
各ページ固有CSS
------------------------------------------------------------------------------------ */

/*dc-office_data*/

#route-guide .guide_num {
  display:inline-block;
  background: #189CC9;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  color: #FFF;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 30px;
  text-align: center;
  padding:5px;
  width: 30px;
  height: 30px;
}
#office-image h5 {
  margin:0 !important;
}

#office-image li {
  margin:20px 0 ;
  padding:5px;
  background-color: #fff;
}

#office-image input.wpcf7-file {
  width:auto ;
}

/*dc-webpromotion*/

.webpromotion input[type="radio"] {
  margin-top:13px ;
}
textarea[name="k04-textarea"]{
  height:150px;
}
.webpromotion_menu_container {
  margin:20px 0;
  display:flex;
  justify-content: space-around;
}
.webpromotion_menu {
  width:201px;
  text-align:center;
  border-radius: 10px;
  -moz-border-radius: 10px 10px 10px 10px;
  -webkit-border-radius: 10px 10px 10px 10px;
  border: 1px solid #ddd;
  padding:10px;
  -webkit-box-shadow: 3px 3px 15px -2px rgba(0,0,0,0.03); 
  box-shadow: 3px 3px 15px -2px rgba(0,0,0,0.03);
  background-color:#fff;
}

p.webpromotion_price {
  font-size:140%;
  margin-bottom:12px;
}
.webpromotion_menu .note{
  font-size:90%;
  margin-bottom:12px;
  padding:0;
}
.standard {
  font-size:90%;
}

@media screen and (max-width: 767px) {

.webpromotion_menu_container {
  flex-wrap:wrap;
  flex-direction:column;
}
.webpromotion_menu {
  max-width:201px;
  width:80%;
  margin: 10px auto;
}
}

/*HTイベントフォームページ*/
textarea[name="textarea-194"]{
  height:250px;
}
textarea[name="f00-textarea"],textarea[name="fa0-textarea"] {
  font-family:inherit;
  height:500px;
}
.file_request input , .file_request textarea {
  width:auto ;
}
.file_request input[type="file"] {
  border:none;
}

/*dc-event*/
input[name="tel-990"]{
  width:30%;
}
select[name="menu-962"]{
  margin-left:8px;
}
select[name="menu-972"]{
  margin-left:8px;
}
select[name="menu-973"]{
  margin-left:8px;
}

table {
  margin: 20px auto;
}
#event_table th {
  border: solid 1px #ccc;
  padding: 10px;
}
#event_table td {
  border: solid 1px #ccc;
  padding: 10px;
}

/* limited-promotion */
.limited-promotion {
  width: fit-content;
  padding: 14px 20px 10px;
  margin-bottom: 12px;
  
  text-align: center;
  border: 5px solid #f00;
}
.limited-promotion h4 {
  padding: 0;
  margin: 0;
}
.limited-promotion p {
  margin: 0;
}

.limited-promotion-detail {
  padding-left: 10px;
  padding-bottom: 1em;
}
.limited-promotion-detail .lmpr-heading {
  font-size: 120%;
  padding: 0;
  margin: 0;

  font-weight: bold;
  line-height: 1.4;
}
.limited-promotion-detail .lmpr-desc {
  line-height: 1.6;
}

.limited-promotion-price {
  display: inline-block;

  font-size: 10px;
  line-height: 1.4;
  vertical-align: middle;
}

@media screen and (max-width: 767px){
  .limited-promotion-price {
    font-size: 11px;
  }
}

/* printorder */
.pamphlet-caption {
  margin-bottom: 10px;

  font-size: 1.2rem;
  font-weight: bold;
}

.wpcf7 input.namepart {
  width: unset;
}

/* goodsorder */
.goodsorder .goodscontainer {
  align-items: center;
  display: flex;
}
.goodsorder .goodscontainer .ttl-block {
  margin-left: 1.3em;
}
.goodsorder .goodsimgs,
.goodsorder .goodsimg {
  margin: auto;
  width: 40%;
}
.goodsorder .goodsimgs .goodsimg {
  width: 100%;
}
.goodsorder .goodslists {
  width: 60%;
}
.goodsorder .goodslists li {
  padding: 15px;
  list-style-type: none;
  text-align: center;
  margin: 0 auto;
  border: solid 1px #ccc;
  border-bottom: none;
}
.goodsorder .goodslists li.ttl {
  background-color: #f2f2f2;
}
 
.goodsorder .goodslists li:last-child {
  border-bottom: solid 1px #ccc;
}
 
.goodsorder .goodscontainer .goodslists ul {
  margin-bottom: 0;
}

.goodsorder .goodscontainer li input, .goodsorder .goodscontainer li select {
  width: 20%;
  margin: 0 20px;
}
.goodsorder .goodsproperty {
  display: inline-block;
  width: 26%;
}

.goodsorder .decoboco-fes .goodscontainer.calendar-goods .goodsimgs {
  width: 52%;
}

.goodsorder .decoboco-fes .goodsimg img {
  width: 100%;
  max-width: unset;
}

.goodsorder .decoboco-fes .goodscontainer.calendar-goods .goodslists li {
  display: flex;
  justify-content: center;

  line-height: 1.5;
}

.goodsorder .decoboco-fes .goodscontainer.calendar-goods .goodslists span.select-4-02 {
  height: fit-content;
  margin: auto 0;
}

.goodsorder .decoboco-fes .goodscontainer.calendar-goods .goodslists li select {
  width: fit-content;
}

@media screen and (max-width: 767px){
  .goodsorder .goodscontainer {
    flex-wrap: wrap;
    flex-direction: column;
  }
  .goodsorder .goodscontainer .ttl-block {
    margin-left: 0;
  }
  .goodsorder .goodsimg {
    width: 100%;
    display: block;
  }
  .goodsorder .goodsproperty {
    width: 100%;
  }
  .goodsorder .goodslists {
    width: 100%;
  }
  .goodsorder .goodslists ul {
    margin: 0;
  }
  .goodsorder .goodscontainer li input {
    width: 50%;
  }
  .goodsorder .goodscontainer li select {
    width: 35%;
  }

  .goodsorder .decoboco-fes .goodsimgs,
  .goodsorder .decoboco-fes .goodscontainer.calendar-goods .goodsimgs {
    width: 100%;
  }

  .goodsorder .decoboco-fes .goodscontainer.calendar-goods .goodslists li {
    display: list-item;
  }
}

/*style.cssの反映を除外*/
.wpcf7 #event_table input, .wpcf7 #event_table textarea {
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  width:100%;
  padding:8px;
  border:1px
  solid #ccc;
  line-height:1.2;
}

#accesstool .wpcf7-text {
width:auto;
margin-left: 10px;
}

#accesstool .wpcf7-checkbox {
display: inline-block;
border: 1px solid #ccc;
border-radius: 25px;
padding:10px 20px 10px 0;
margin:10px 10px 10px 0;
background-color:#eee;
}
#accesstool .wpcf7-checkbox input {
  margin:initial;
}
#accesstool td {
border:none;
}
.fourradio span {
  padding:10px;
  display:inline-block;
}

@media screen and (max-width: 767px) {

#accesstool .wpcf7-text {
  margin:10px auto;
  width:100%;
}
  
  input[name="tel-990"]{
    width:100%;
  }
  .last td:last-child {
    border-bottom: solid 1px #ccc;
  }

  .wpcf7 #event_table input, .wpcf7 #event_table textarea {
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    width:auto;/*スマホ対応*/
  }
  #event_table {
    width: 80%;
  }
  #event_table th {
    display: none;
  }
  #event_table tr {
    display:block;
  }
  #event_table td{
    display: block;
    border-bottom:none;
  }
  #event_table tr:last-child td:last-child{
      border-bottom: solid 1px #ccc;
  }

.date-964::before {
    content:"開催日①";
    padding-right:5px;
}
.menu-416::before {
    content:"開始時刻①";
    padding-right:5px;
}
.menu-417::before {
    content:"終了時刻①";
    padding-right:5px;
}
.text-603::before {
    content:"内容①";
    padding-right:5px;
}
/*2*/
.date-965::before {
    content:"開催日②";
    padding-right:5px;
}
.menu-964::before {
    content:"開始時刻②";
    padding-right:5px;
}
.menu-965::before {
    content:"終了時刻②";
    padding-right:5px;
}
.text-604::before {
    content:"内容②";
    padding-right:5px;
}
/*3*/
.date-966::before {
    content:"開催日③";
    padding-right:5px;
}
.menu-966::before {
    content:"開始時刻③";
    padding-right:5px;
}
.menu-967::before {
    content:"終了時刻③";
    padding-right:5px;
}
.text-605::before {
    content:"内容③";
    padding-right:5px;
}
/*4*/
.date-967::before {
    content:"開催日④";
    padding-right:5px;
}
.menu-968::before {
    content:"開始時刻④";
    padding-right:5px;
}
.menu-969::before {
    content:"終了時刻④";
    padding-right:5px;
}
.text-606::before {
    content:"内容④";
    padding-right:5px;
}
/*5*/
.date-968::before {
    content:"開催日⑤";
    padding-right:5px;
}
.menu-970::before {
    content:"開始時刻⑤";
    padding-right:5px;
}
.menu-971::before {
    content:"終了時刻⑤";
    padding-right:5px;
}
.text-607::before {
    content:"内容⑤";
    padding-right:5px;
}


}/*@media screen and (max-width: 767px) */

/*writer by haranosono*/