@charset "UTF-8";
/* font
----------------------------------------------- */
:root { --gothic: 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; --mincho: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", serif; --black: #4d3b2d; --orange: #ff7000; --brown: #675242; --red: #cf2200; }

/* default sp
	----------------------------------------------- */
* { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

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, 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, section, summary, time, mark, audio, video { padding: 0; margin: 0; font: inherit; word-wrap: break-word; border: 0; vertical-align: baseline; outline: none; }
body { padding: 0; margin: 0; color: var(--black); font-size: 3.5vw; font-family: var(--gothic); -webkit-text-size-adjust: 100%; font-style: normal; line-height: 1; }
article, aside, canvas, details, figcaption, figure, header, footer, hgroup, main, menu, nav, section, summary { display: block; }
blockquote, q { quotes: none; }
strong, b { font-weight: bold; }
ul, ol, li { list-style: none; }
table { border-spacing: 0; border-collapse: collapse; }
img, video, object { height: auto; border: none; display: block; }
ins { background: none; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
hr { height: 1px; padding: 0; margin: 1em 0; border: 0; border-top: 1px solid #ccc; display: block; }
*:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
a { color: var(--black); text-decoration: none; display: block; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
a:hover { opacity: 0.6; }
.clearfix:after { content: ''; display: block; clear: both; }
.pc { display: none; }
.sp { display: block; }
em{background: linear-gradient(transparent 60%, #fffa8b 60%);font-weight: bold;}

/* common sp
----------------------------------------------- */
.wrapper { width: 100%; padding-top: 30vw; background: #f7f6e2; overflow: hidden; z-index: 1; position: relative; }
.google-map { width: 100%; position: relative; }
.google-map iframe, .google-map object, .google-map embed { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }

.calendar-table { width: 100%; margin-bottom: 2.5vw; text-align: center; line-height: 1.2; background: #fff; border: 1px solid #dae0ee; }
.calendar-table thead { color: #fff; font-size: 3.68vw; font-weight: bold; background: #a97e5c; }
.calendar-table th { padding: 3vw 0 2.5vw; vertical-align: middle; border: 1px solid #dae0ee; }
.calendar-table td { width: 9%; padding: 3vw 0 2.5vw; vertical-align: middle; border: 1px solid #dae0ee; }
.calendar-table .yellow { color: #d8cc64; font-size: 5.26vw; }
.calendar-table .orange { color: #efaa52; font-size: 3.95vw; }
.calendar-table-note { font-size: 3.16vw; text-align: center; line-height: 1.4; }

.wrapper .midashi01 { padding: 3vw 4vw 2.5vw; margin-bottom: 2.5vw; color: #fff; font-size: 4.5vw; font-weight: bold; line-height: 1.4; background: var(--brown); border-left: 2vw solid #d0b7a5; }
.wrapper .midashi02 { padding: 3vw 4vw 2.5vw; margin-bottom: 2.5vw; color: #fff; font-size: 4.5vw; font-weight: bold; line-height: 1.4; background: url(../images/base/midashi2-bg.jpg);background-size:15%;    text-shadow: 2px 1px 11px #e26908, 1px 0px 6px #e26908;}
.main .midashi03{border: 3px double #f4c199;background: #fff9ef;text-align:center;padding:2% 2%;font-weight:bold;font-size: 112%;line-height:1.3;color:var(--orange);margin-bottom: 4vw;}
.wrapper .midashi04{position:relative;margin-bottom: 12vw;}
.wrapper .midashi04 span{display:block;line-height:1.45;}
.wrapper .midashi04 .jp{text-align:center;font-weight:bold;font-size:7vw;}
.wrapper .midashi04 .en{font-family: "Lato"; font-weight: 700;text-align:center;color:var(--orange);letter-spacing:1px;}
.wrapper .midashi04:after{content:"";width:20%;height:3px;background: #dad79f;position:absolute;left: 50%;bottom: -5vw;transform: translateX(-50%);}

.wakumoto01{background: url(../images/base/waku-t.jpg) no-repeat top center, url(../images/base/waku-b.jpg) no-repeat bottom center, url(../images/base/waku-m.jpg) repeat-y center;background-size: contain;padding: 10% 7%;}
.col2-item{margin-bottom:5%;}
.col2-item img{width:100%;margin-bottom:5%;}
.text-areain img{width:100%;margin-bottom:4%;}
.text-areain-r img{width:100%;margin-bottom:4%;}
.bnritems li img{margin-bottom:2%;}

.flowitem{background:#ff8323d6;border-radius:20px;outline:3px solid var(--orange);padding: 8% 5% 5% 5%;margin-bottom: 10vw;}
.main .flowitem .midashi04 span{color:#fff;}
.main .flowitem .midashi04:after{background:#fff;}
.flowitem li{background:#fff;padding: 5%;margin-bottom: 7%;border-radius:10px;position:relative;}
.flowitem li:before {content: "";position: absolute;top: 100%;left: 50%;margin-left: -40px;border: 40px solid transparent;border-top: 10px solid #ffffff;}
.flowitem li:nth-last-child(1):before{content:none;}
.flowitem li:nth-last-child(1){margin-bottom:0;}
.flowitem li p{line-height:1.5;}
.flowitem li .tit{font-weight:bold;color:var(--orange);font-size:5vw;padding-bottom: 2%;margin-bottom: 4%;border-bottom: 2px solid #ccc;}
.flowitem li .tit span{font-family: "Lato"; font-weight: 700;position:relative;}
.flowitem li .tit span:after{content:"."}

.more01 {width: 50vw;padding: 3vw 0 2.5vw;margin: 0 auto;color: #fff;font-size: 4.5vw;font-weight: bold;text-align: center;background: #8b7767;position: relative;}
.more01:after { content: '\f105'; font-family: 'icon'; pointer-evens: none; position: absolute; top: 50%; right: 4vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.tbl01{margin-bottom:10%;background: #fff;}
.tbl01 table{width:100%;border: 1px solid #e8e8e8;}
.tbl01 tr{border-bottom:1px solid #e8e8e8;}
.tbl01 tr:nth-child(1){border-top:1px solid #e8e8e8;}
.tbl01 th,.tbl01 td{padding:3% 5%;line-height: 1.4;vertical-align: middle;}
.tbl01 th{background:#e8e8e8;width:35%;border-bottom:1px solid #ffffff;font-weight:bold;}
.tbl01 tr:nth-last-child(1) th{border-bottom:none;}
.tbl01 td{width:65%;font-feature-settings: "palt";}
.tbl01 thead{font-weight:bold;color:#fff;text-align:center;}
.tbl01 thead th{background:var(--black)}
.tbl01 thead td{background:var(--orange);}
.tbl01 td p{margin-bottom: 4vw;}


/* header sp
----------------------------------------------- */
.header { width: 100%; z-index: 10; position: fixed; top: 0; left: 0; }
.header-head { width: 100%; height: 15vw; background: #f8f6e1; z-index: 11; position: relative; }
.header-logo {width: 50vw;text-align: center;position: absolute;top: 50%;left: 2.5vw;-moz-transform: translateY(-50%);-ms-transform: translateY(-50%);-webkit-transform: translateY(-50%);transform: translateY(-50%);}
.header-logo .logo { width: 100%; }
.header-logo .badge {margin-top: 0.5vw;font-size: 2.9vw;font-weight: bold;text-indent: 0.5em;letter-spacing: 0.1vw;display: block;}
.header-logo .badge .red { color: var(--red); }

.header-navi-button { width: 30vw; height: 10vw; background: #fff; border: 2px solid #513925; -moz-border-radius: 10vw; -webkit-border-radius: 10vw; border-radius: 10vw; cursor: pointer; position: absolute; top: 2.5vw; right: 4vw; -moz-transition: all 0.1s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.1s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.1s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.1s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-button .line-box { width: 6.5vw; height: 5vw; margin-right: 2vw; position: absolute; top: 50%; left: 4vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-button .line { width: 5vw; height: 1vw; background: #513925; -moz-border-radius: 5vw; -webkit-border-radius: 5vw; border-radius: 5vw; position: absolute; right: 0; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-button .line:before { content: ''; width: 1vw; height: 1vw; background: #513925; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; position: absolute; top: 50%; left: -1.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-button .line-top { top: 0; }
.header-navi-button .line-middle { top: 50%; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-button .line-bottom { top: 4vw; }
.header-navi-button .line-title { font-size: 3.68vw; font-weight: bold; line-height: 1.2; letter-spacing: -0.4vw; position: absolute; top: 50%; right: 4vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); -moz-transition: all 0.2s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.2s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.2s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.2s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-button .line-title:before { content: '閉じる'; width: 100%; padding-top: 0.2vw; color: var(--black); opacity: 0; position: absolute; top: 0; left: 0; -moz-transform: translateY(-5px); -ms-transform: translateY(-5px); -webkit-transform: translateY(-5px); transform: translateY(-5px); -moz-transition: all 0.2s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.2s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.2s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.2s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-button .line-title span { opacity: 1; display: block; -moz-transition: all 0.25s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.25s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.25s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.25s cubic-bezier(0.76, 0, 0.24, 1); }

.header-main-items { width: 100%; height: 15vw; background: var(--orange); z-index: 11; position: relative; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.header-main-items li { width: 25%; height: 100%; text-align: center; position: relative; }
.header-main-items li:first-child:before { display: none; }
.header-main-items li:before { content: ''; width: 1px; height: calc(100% - 4vw); background: #ffc69a; position: absolute; top: 50%; left: 0; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-main-items a { height: 100%; padding-top: 2.5vw; }
.header-main-item-icon { width: auto; height: 6vw; margin: 0 auto 1vw; }
.header-main-item-title { color: #fff; font-size: 2.89vw; font-weight: bold; text-align: center; display: block; }

.header-navi { width: 100%; height: 100%; background: #f7f6e2; opacity: 0; visibility: hidden; z-index: 10; position: fixed; top: 0; left: 0; -moz-transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-inner { width: 100%; height: 100%; overflow-y: auto; -ms-overflow-style: none; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.header-navi-inner::-webkit-scrollbar { display: none; }
.header-navi-scroll { width: 100%; height: 100%; overflow-y: auto; position: relative; -ms-overflow-style: none; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.header-navi-scroll::-webkit-scrollbar { display: none; }
.header-navi-content { width: 90vw; padding: 38vw 0 100px; margin: 0 auto; }
.header-navi-box { margin-bottom: 4vw; }
.header-navi-box02 .header-navi-title { background: var(--black); }
.header-navi-box02 .header-navi-items { display: block; }
.header-navi-box02 .header-navi-items li { width: 100%; border-right: none; }
.header-navi-box02 .header-navi-items a { padding-left: 8vw; background: url(../images/arrow-brown.png) no-repeat center left 2.5vw; background-size: 4vw; }
.header-navi-box02 .header-navi-items a:after { display: none; }
.header-navi-title { padding: 3vw; color: #fff; font-size: 3.95vw; font-weight: bold; letter-spacing: -0.02em; background: var(--orange); z-index: 1; position: relative; }
.header-navi-title.open .plus:after { -moz-transform: translate(-50%, -50%) rotate(90deg); -ms-transform: translate(-50%, -50%) rotate(90deg); -webkit-transform: translate(-50%, -50%) rotate(90deg); transform: translate(-50%, -50%) rotate(90deg); }
.header-navi-title .plus { width: 2.5vw; height: 2.5vw; position: absolute; top: 50%; right: 3vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-title .plus:before { content: ''; width: 100%; height: 1px; background: #fff; position: absolute; top: 50%; left: 50%; -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.header-navi-title .plus:after { content: ''; width: 1px; height: 100%; background: #fff; position: absolute; top: 50%; left: 50%; -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-inbox { display: none; }
.header-navi-items { width: 100%; margin: 0 auto; background: #fff; overflow: hidden; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.header-navi-items li { width: 50%; margin-bottom: -1px; font-size: 3.68vw; line-height: 1.4; border-bottom: 1px solid #ddd; border-right: 1px solid #ddd; position: relative; }
.header-navi-items li:nth-child(even) { border-right: none; }
.header-navi-items a { padding: 3vw 2.5vw; }
.header-navi-items a:after { content: '\f105'; color: var(--brown); font-family: 'icon'; pointer-evens: none; position: absolute; top: 50%; right: 2.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-link { padding: 3vw; color: #fff; font-size: 3.95vw; font-weight: bold; letter-spacing: -0.02em; background: var(--orange); z-index: 1; position: relative; }
.header-navi-link:after { content: '\f105'; color: #fff; font-family: 'icon'; pointer-evens: none; position: absolute; top: 50%; right: 4vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.animation { opacity: 0; visibility: hidden; -moz-transform: translateY(5px); -ms-transform: translateY(5px); -webkit-transform: translateY(5px); transform: translateY(5px); -moz-transition: all 0.65s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.65s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.65s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.65s cubic-bezier(0.76, 0, 0.24, 1); }

.header-navi-open { width: 100%; height: 100%; position: fixed; }
.header-navi-open .header-navi-button .line:before { display: none; }
.header-navi-open .header-navi-button .line-top { top: 50%; right: auto; left: 50%; -moz-transform: translate(-50%, -50%) rotate(40deg); -ms-transform: translate(-50%, -50%) rotate(40deg); -webkit-transform: translate(-50%, -50%) rotate(40deg); transform: translate(-50%, -50%) rotate(40deg); }
.header-navi-open .header-navi-button .line-middle { right: -2vw; opacity: 0; visibility: hidden; }
.header-navi-open .header-navi-button .line-bottom { top: 50%; right: auto; left: 50%; -moz-transform: translate(-50%, -50%) rotate(-40deg); -ms-transform: translate(-50%, -50%) rotate(-40deg); -webkit-transform: translate(-50%, -50%) rotate(-40deg); transform: translate(-50%, -50%) rotate(-40deg); }
.header-navi-open .header-navi-button .line-title:before { opacity: 1; -moz-transform: translateY(0); -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); }
.header-navi-open .header-navi-button .line-title span { opacity: 0; -moz-transform: translateY(5px); -ms-transform: translateY(5px); -webkit-transform: translateY(5px); transform: translateY(5px); }
.header-navi-open .header-navi { opacity: 1; visibility: visible; left: 0; }
.header-navi-open .animation { opacity: 1; visibility: visible; -moz-transform: translateY(0); -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); }
.header-navi-open .animation01 { -moz-transition-delay: 0.1s; -o-transition-delay: 0.1s; -webkit-transition-delay: 0.1s; transition-delay: 0.1s; }

/* hero sp
----------------------------------------------- */
.hero { width: 100%; z-index: 1; position: relative; }
.top-hero-image { width: 100%; }
.top-hero-image img { width: 100%; }

/* bread sp
----------------------------------------------- */
.breadcrumb { padding: 6vw 0; z-index: 1; position: relative; }
.breadcrumb-items { width: 90vw; margin: 0 auto; font-size: 0; }
.breadcrumb-items li { font-size: 3.29vw; position: relative; display: inline-block; }
.breadcrumb-items li:after { content: '\f105'; margin: 0 3vw 0 2vw; font-family: 'icon'; display: inline-block; }
.breadcrumb-items li:last-child:after { display: none; }
.breadcrumb-items a { display: inline-block; }
.breadcrumb-items .icon-home { color: #feba84; }

/* footer sp
----------------------------------------------- */
.footer { width: 100%; padding-bottom: 30vw; z-index: 1; position: relative; }
.footer-access { width: 90vw; padding: 5vw; margin: 0 auto 5vw; background: #fff; }
.footer-access-map { height: 40vw; margin-bottom: 5vw; }
.footer-access-contact-items li { margin: 0 auto 3.5vw; }
.footer-access-contact-items li.insurance, .footer-access-contact-items li.free { text-align: center; display: table; }
.footer-access-contact-items li.insurance .title { background: #523926; }
.footer-access-contact-items li.insurance .number:before { content: '\f095'; margin-right: 1vw; color: #b89171; font-size: 75%; font-family: 'icon'; display: inline-block; }
.footer-access-contact-items li.free .title { background: #dd9863; }
.footer-access-contact-items li.free .number { padding-left: 10vw; color: var(--orange); background: url(../images/icon-free.png) no-repeat center left; background-size: 8.5vw; }
.footer-access-contact-items li.line { width: 50vw; }
.footer-access-contact-items li.line img { width: 100%; }
.footer-access-contact-items .title { width: 58vw; padding: 1.5vw 0 1vw; margin: 0 auto 1.5vw; color: #fff; font-size: 3.68vw; font-weight: bold; -moz-border-radius: 5vw; -webkit-border-radius: 5vw; border-radius: 5vw; display: table; }
.footer-access-contact-items .number { font-size: 7.63vw; font-family: "Lato"; font-weight: 700; letter-spacing: -0.02em; }
.footer-access-info-items { width: 100%; margin-bottom: 2vw; }
.footer-access-info-items li { margin-bottom: 1vw; line-height: 1.4; border: 2px solid #c9caca; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: center; align-items: center; }
.footer-access-info-items .title { width: 22vw; padding: 2vw 0 1.5vw; font-size: 3.95vw; text-align: center; background: #ebebec; }
.footer-access-info-items .address, .footer-access-info-items .step { padding: 2vw 2.5vw 1.5vw; font-size: 3.68vw; }
.footer-access-date-map img { width: 100%; }
.footer-content { width: 90vw; margin: 0 auto; position: relative; }
.footer-calendar { margin-bottom: 5vw; }
.footer-logo {width:  60vw;margin-bottom: 2.5vw;}
.footer-logo img { width: 100%; }

.copyright { width: 100%; font-size: 3.68vw; display: block; }
.pagetop {width: 24vw;padding: 2vw 0 3vw;color: #fff;text-align: center;font-size: 3.68vw;background: #8d7e73;position: absolute;bottom: 0;right: 0;}
.pagetop:before { content: '\f106'; margin-bottom: 0.5vw; font-family: 'icon'; display: block; }

.footer-fixed { width: 100%; z-index: 8; opacity: 0; visibility: hidden; position: fixed; bottom: 0; left: 0; -moz-transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.6s cubic-bezier(0.76, 0, 0.24, 1); }
.footer-fixed.active { opacity: 1; visibility: visible; }
.footer-fixed-items { width: 100%; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.footer-fixed-items li { width: calc(100% / 3); position: relative; }
.footer-fixed-items li.top { width: 100%; font-size: 3.95vw; font-weight: bold; text-align: center; position: relative; }
.footer-fixed-items li.top a { padding: 2vw 0; color: #fff; background: var(--brown); }
.footer-fixed-items li.top a:after { content: '\f105'; font-family: 'icon'; pointer-evens: none; position: absolute; top: 50%; right: 2.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.footer-fixed-items .yellow { color: #ebff3e; }
.footer-fixed-items img { width: 100%; }

/* second sp
----------------------------------------------- */
.second { z-index: 1; position: relative; }
.second-text { width: 90vw; min-height: 100vw; padding-bottom: 12vw; margin: 0 auto; }
.second-text p {margin-bottom: 1.5vw;font-size: 3.6vw;line-height: 1.6;}
.second-title { margin-bottom: 4vw; }

/* =============================================
pc-size
================================================*/
@media screen and (min-width: 736px) { 
/* default pc ----------------------------------------------- */
body { font-size: 15px; }
.sp { display: none; }
.pc { display: block; }
/* common pc ----------------------------------------------- */
.wrapper { padding-top: 130px; }
.container { width: 1100px; padding-top: 30px; margin: 0 auto; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: flex-start; align-items: flex-start; }
.main { width: 800px; order: 1; }
.calendar-table { margin-bottom: 10px; }
.calendar-table thead { font-size: 15px; }
.calendar-table tbody { font-size: 15px; }
.calendar-table th { padding: 6px 0 5px; }
.calendar-table td { width: 65px; padding: 6px 0 5px; }
.calendar-table .yellow { font-size: 28px; }
.calendar-table .orange { font-size: 20px; }
.calendar-table-note { font-size: 14px; text-align: left; }
.wrapper .midashi01 { padding: 10px 12px 9px; margin-bottom: 20px; font-size: 22px; border-width: 10px; }
.wrapper .midashi02 {padding: 10px 12px 9px;margin-bottom: 20px;font-size: 22px;border-width: 10px;background: url(../images/base/midashi2-bg.jpg);background-size: 50px;}
.wrapper .midashi03{font-size:18px;padding:10px;margin-bottom: 20px;}
.wrapper .midashi04{margin-bottom: 80px;}
.wrapper .midashi04 .jp{font-size:36px;}
.wrapper .midashi04 .en{font-size:18px;}
.wrapper .midashi04:after{width:100px;bottom:-40px;}	
.wakumoto01{padding: 60px 50px;margin-bottom:30px;}
.col2-item{display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;}
.col2-item li{width:49%;margin-bottom:10px;}
.col2-item li img{margin-bottom:10px;}
.text-areain {display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: start;}
.text-areain .textbox{width:400px;}
.text-areain img{width: 370px;}
.text-areain-r {display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: start;}
.text-areain-r .textbox{width:400px;order: 1;}
.text-areain-r img{width: 370px;order: 2;}
.flowitem {padding: 50px 0 30px 0;margin-bottom: 60px;}
.flowitem li {width: 238px;margin: 0 8px 15px 8px;padding: 18px;}
.flowitem li:nth-last-child(1){margin-bottom:15px;}
.flowitem li:before {border: 14px solid transparent;border-left: 10px solid #ffffff;left: inherit;right: -23px;top: 45%;}
.flowitem li img {width: 100%;}
.flowitem li .textbox {width: 100%;}
.flowitem li .tit {font-size: 18px;border-bottom: 1px solid #ccc;}
.flowitem ul {margin-bottom: 0;-webkit-justify-content: center;justify-content: center;}
.flowitem li p {font-size: 14px;}
.more01 { width: 190px; padding: 12px 0; font-size: 18px; }
.more01:after { right: 15px; }
.tbl01 th{width:25%;}
.tbl01 th, .tbl01 td{padding: 12px 20px;}
.tbl01 td{font-size: 94%;line-height: 1.8;}
.tbl01 td p{margin-bottom: 8px;}
	
/* header pc ----------------------------------------------- */
.pc-header { background: #f9f6e2; }
.pc-header-seo { height: 30px; padding-top: 8px; color: #fff; font-size: 14px; text-align: center; background: #79593f; }
.pc-header-content { width: 1200px; height: 100px; margin: 0 auto; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: center; align-items: center; }
.pc-header-logo { width: 225px; margin-right: auto; text-align: center; }
.pc-header-logo .logo {width: 275px;margin: 0 auto 5px;}
.pc-header-logo .badge {margin-bottom: 5px;font-size: 15px;font-weight: bold;text-indent: 0.5em;display: block;text-align: left;}
.pc-header-logo .badge span { color: var(--red); }
.pc-header-logo .address {font-size: 13px;display: block;text-align: left;}
.pc-header-tel-items { margin-right: 10px; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.pc-header-tel-items li { margin: 0 6px; }
.pc-header-tel-items li.insurance, .pc-header-tel-items li.free { text-align: center; display: table; }
.pc-header-tel-items li.insurance .title { background: #523926; }
.pc-header-tel-items li.insurance .number:before { content: '\f095'; margin-right: 5px; color: #b89171; font-size: 75%; font-family: 'icon'; display: inline-block; }
.pc-header-tel-items li.free .title { background: #dd9863; }
.pc-header-tel-items li.free .number { padding-left: 40px; color: var(--orange); background: url(../images/icon-free.png) no-repeat center left; background-size: 36px; }
.pc-header-tel-items .title { width: 220px; padding: 5px 0 4px; margin: 0 auto 5px; color: #fff; font-size: 14px; font-weight: bold; -moz-border-radius: 15px; -webkit-border-radius: 15px; border-radius: 15px; display: table; }
.pc-header-tel-items .number { font-size: 30px; font-family: "Lato"; font-weight: 700; letter-spacing: -0.02em; }
.pc-header-contact-items { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.pc-header-contact-items li { width: 195px; margin-left: 8px; }
.pc-header-contact-items img { width: 100%; }
.header-global-items {width: 100%;/* max-width: 1200px; */height: 75px;background: var(--orange);display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: center;justify-content: center;}
.header-global-items li { height: 100%; text-align: center; background: url(../images/header-global-current.png) no-repeat center bottom -90px; background-size: 0; position: relative; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
.header-global-items li.current, .header-global-items li:hover { background-size: 175px; }
.header-global-items li.current a, .header-global-items li:hover a { opacity: 1; }
.header-global-items li:first-child:before { display: none; }
.header-global-items li:before { content: ''; width: 2px; height: calc(100% - 30px); background: #ff9f54; position: absolute; top: 50%; left: 0; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-global-items a {height: 100%;padding: 20px 14px 0;}
.header-global-items .jp {margin-bottom: 6px;color: #fff;font-size: 14.5px;font-weight: bold;display: block;}
.header-global-items .en {color: #ffcea7;font-size: 12px;font-family: "Lato";font-weight: 700;letter-spacing: 1px;display: block;}

/* hero pc ----------------------------------------------- */
.top-hero { padding: 0; }
.top-hero-image { min-width: 2000px; position: relative; left: 50%; -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%); }

/* aside pc ----------------------------------------------- */
.aside { width: 250px; margin-bottom: 20px; }
.aside-banner { margin-bottom: 20px; }
.aside-banner img { width: 100%; }
.aside-box { margin-bottom: 20px; }
.aside-box.brown .aside-box-title { background: #705137; }
.aside-box.brown .aside-box-items a { background: url(../images/arrow-brown.png) no-repeat top 11px left 10px; background-size: 15px; }
.aside-box.red .aside-box-title { background: var(--red); }
.aside-box.red .aside-box-items a { background: url(../images/arrow-red.png) no-repeat top 11px left 10px; background-size: 15px; }
.aside-box.grey .aside-box-title { background: #5b5b5c; }
.aside-box-title { padding: 6px 0; margin-bottom: 5px; color: #fff; font-size: 20px; font-weight: bold; text-align: center; line-height: 1.2; background: var(--orange); }
.aside-box-items { width: 100%; }
.aside-box-items li { width: 100%; margin-bottom: 5px; font-size: 15px; font-weight: bold; line-height: 1.4; background: #fff; }
.aside-box-items a { padding: 8px 12px 8px 30px; background: url(../images/arrow-orange.png) no-repeat top 11px left 10px; background-size: 15px; }
.aside-box-accordion-items { width: 100%; }
.aside-box-accordion-item { width: 100%; margin-bottom: 2px; }
.aside-box-accordion-item-title { padding: 8px 12px; font-size: 15px; font-weight: bold; line-height: 1.4; background: #fff; z-index: 1; cursor: pointer; position: relative; }
.aside-box-accordion-item-title .plus { width: 8px; height: 8px; position: absolute; top: 50%; right: 12px; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.aside-box-accordion-item-title .plus:before { content: ''; width: 100%; height: 1px; background: var(--black); position: absolute; top: 50%; left: 50%; -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.aside-box-accordion-item-title .plus:after { content: ''; width: 1px; height: 100%; background: var(--black); position: absolute; top: 50%; left: 50%; -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.aside-box-accordion-initems { background: #eeebd9; display: none; z-index: 0; position: relative; }
.aside-box-accordion-initems li { padding: 8px 12px; font-size: 15px; line-height: 1.4; border-bottom: 1px solid #cfd0d0; position: relative; }
.aside-box-accordion-initems li:last-child { border: none; }
.aside-box-accordion-initems a:after { content: '\f105'; font-size: 14px; font-family: 'icon'; pointer-evens: none; opacity: 0.5; position: absolute; top: 50%; right: 14px; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.aside-box-more { margin: 8px 0 0 auto; font-size: 15px; display: table; }
.aside-box-more:before { content: '\f105'; margin-right: 6px; font-size: 14px; font-family: 'icon'; pointer-evens: none; opacity: 0.5; display: inline-block; }
.aside-topics-items { padding: 1px 15px; margin-top: -5px; background: #fff; }
.aside-topics-items li { width: 100%; border-bottom: 1px dotted #ddd; }
.aside-topics-items li:last-child { border: none; }
.aside-topics-items a { padding: 15px 0 15px 20px; }
.aside-topics-item-time { margin-bottom: 5px; font-size: 15px; font-weight: bold; position: relative; display: block; }
.aside-topics-item-time:before { content: ''; width: 15px; height: 15px; background: url(../images/arrow-brown.png) no-repeat center; background-size: 100%; position: absolute; top: -1px; left: -20px; }
.aside-topics-item-title { font-size: 14px; text-align: justify; text-justify: inter-ideograph; font-feature-settings: "palt"; line-height: 1.6; letter-spacing: 0.04em; }
.aside-menu-items { width: 100%; }
.aside-menu-items li { width: 100%; margin-bottom: 5px; font-size: 18px; font-weight: bold; line-height: 1.2; position: relative; }
.aside-menu-items a { padding: 8px 10px; color: #fff; background: #705238; }
.aside-menu-items a:after { content: '\f105'; font-family: 'icon'; pointer-evens: none; position: absolute; top: 50%; right: 12px; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.aside-google-items { width: 100%; padding: 1px 15px; margin-top: -5px; background: #fff; }
.aside-google-items li { width: 100%; padding: 15px 20px; border-bottom: 1px dotted #ddd; }
.aside-google-items li:last-child { border: none; }
.aside-google-items a { padding: 15px 0 15px 20px; }
.aside-google-item-value { margin-bottom: 5px; color: var(--red); font-size: 16px; letter-spacing: 2px; position: relative; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.aside-google-item-value.star01:after { content: '★☆☆☆☆'; }
.aside-google-item-value.star02:after { content: '★★☆☆☆'; }
.aside-google-item-value.star03:after { content: '★★★☆☆'; }
.aside-google-item-value.star04:after { content: '★★★★☆'; }
.aside-google-item-value.star05:after { content: '★★★★★'; }
.aside-google-item-value:before { content: ''; width: 15px; height: 15px; background: url(../images/arrow-orange.png) no-repeat center; background-size: 100%; position: absolute; top: 0; left: -20px; }
.aside-google-item-title { font-size: 14px; text-align: justify; text-justify: inter-ideograph; font-feature-settings: "palt"; line-height: 1.6; letter-spacing: 0.04em; }

/* bread pc ----------------------------------------------- */
.breadcrumb { padding: 0 0 30px; }
.breadcrumb-items { width: 820px; }
.breadcrumb-items li { font-size: 15px; }
.breadcrumb-items li:after { margin: 0 12px 0 8px; }

/* footer pc ----------------------------------------------- */
.footer { padding-bottom: 30px; }
.footer-access { width: 1200px; padding: 40px 35px; margin-bottom: 30px; }
.footer-access-content { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }
.footer-access-map { width: 415px; height: auto; margin: 0; }
.footer-access-date { width: 670px; }
.footer-access-date-head { margin-bottom: 20px; }
.footer-access-contact-items { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; }
.footer-access-contact-items li { margin: 0; }
.footer-access-contact-items li.insurance .number:before { margin-right: 5px; }
.footer-access-contact-items li.free .number { padding-left: 40px; background: url(../images/icon-free.png) no-repeat center left; background-size: 36px; }
.footer-access-contact-items li.line { width: 195px; }
.footer-access-contact-items .title { width: 220px; padding: 5px 0 4px; margin: 0 auto 2px; color: #fff; font-size: 14px; font-weight: bold; -moz-border-radius: 15px; -webkit-border-radius: 15px; border-radius: 15px; display: table; }
.footer-access-contact-items .number { font-size: 30px; font-family: "Lato"; font-weight: 700; letter-spacing: -0.02em; }
.footer-access-date-foot { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }
.footer-access-info-items { width: 330px; margin: 0; }
.footer-access-info-items li { margin-bottom: 5px; }
.footer-access-info-items .title { width: 95px; padding: 12px 0; font-size: 15px; }
.footer-access-info-items .address, .footer-access-info-items .step { padding: 14px 12px 12px; font-size: 14px; }
.footer-access-date-map { width: 325px; height: 104px; }
.footer-content { width: 1200px; margin: 0 auto; position: relative; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.footer-calendar { margin: 0 40px 0 0; }
.footer-calendar .calendar-table {width: 750px;}
.footer-logo {width: 285px;margin-bottom: 10px;}
.copyright { font-size: 14px; }
.pagetop { width: 110px; padding: 12px 0; font-size: 14px; top: 0; bottom: auto; }
.pagetop:before { margin-bottom: 5px; }

/* second pc ----------------------------------------------- */
.second-text { width: 100%; min-height: 300px; padding-bottom: 120px; }
.second-text p {margin-bottom: 15px;font-size: 16px;}
.second-title { margin-bottom: 30px; }
}

	
@media screen and (min-width: 900px) {
.header-global-items .jp{font-size:16px;}
}

@media screen and (min-width: 1000px) {
.header-global-items a{padding:20px;}
.header-global-items .jp{font-size:16px;}
}

@media screen and (min-width: 1200px) {
.header-global-items a{padding:20px;}
.header-global-items .jp{font-size:18px;}
}

/* retina用 ----------------------------------------------- */ 
@media screen and (min-width: 736px) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 736px) and (min-resolution: 2dppx) { 
.pc-header-tel-items li.free .number { background: url(../images/icon-free@2x.png) no-repeat center left; background-size: 36px; }
.header-global-items li { background: url(../images/header-global-current@2x.png) no-repeat center bottom -90px; background-size: 0; }
.aside-box.brown .aside-box-items a { background: url(../images/arrow-brown@2x.png) no-repeat top 11px left 10px; background-size: 15px; }
.aside-box.red .aside-box-items a { background: url(../images/arrow-red@2x.png) no-repeat top 11px left 10px; background-size: 15px; }
.aside-box-items a { background: url(../images/arrow-orange@2x.png) no-repeat top 11px left 10px; background-size: 15px; } 
}
