@charset "UTF-8";

/*==========================================================================*/
/*                            Container                                     */
/*==========================================================================*/

body { -webkit-text-size-adjust: none; }

.wrapper { overflow: hidden; }

.inner { max-width: 1024px; margin: 0 auto; }

.inner_sm { max-width: 1000px; margin: 0 auto; }

.fullWidthBreak { width: 100vw; position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; }

/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                           WordPress Core                                 */
/*==========================================================================*/
.alignnone { margin: 5px 20px 20px 0; }

.aligncenter, div.aligncenter { display: block; margin: 5px auto 5px auto; }

.alignright { float: right; margin: 5px 0 20px 20px; }

.alignleft { float: left; margin: 5px 20px 20px 0; }

a img.alignright { float: right; margin: 5px 0 20px 20px; }

a img.alignnone { margin: 5px 20px 20px 0; }

a img.alignleft { float: left; margin: 5px 20px 20px 0; }

a img.aligncenter { display: block; margin-left: auto; margin-right: auto; }

.wp-caption { background: #fff; border: 1px solid #f0f0f0; max-width: 96%; /* Image does not overflow the content area */ padding: 5px 3px 10px; text-align: center; }

.wp-caption.alignnone { margin: 5px 20px 20px 0; }

.wp-caption.alignleft { margin: 5px 20px 20px 0; }

.wp-caption.alignright { margin: 5px 0 20px 20px; }

.wp-caption img { border: 0 none; height: auto; margin: 0; max-width: 98.5%; padding: 0; width: auto; }

.wp-caption p.wp-caption-text { font-size: 11px; line-height: 17px; margin: 0; padding: 0 4px 5px; }

/* Text meant only for screen readers. */
.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */ }

.screen-reader-text:focus { background-color: #eee; clip: auto !important; clip-path: none; color: #444; display: block; font-size: 1em; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; /* Above WP toolbar. */ }

/*==========================================================================*/
/*==========================================================================*/
/*==========================================================================*/
/*                              General                                     */
/*==========================================================================*/
@media only screen and (max-width: 768px) { .pc_only { display: none !important; } }

@media only screen and (min-width: 769px) { .sp_only { display: none !important; } }

.accBtn::before, .accBtn::after { transition: all 0.3s ease-in-out; }

.accBtn.triangle, .accBtn.triangle_btt { position: relative; }

.accBtn.triangle::after { content: ""; position: absolute; right: 10px; top: 50%; width: 0; height: 0; border-radius: 20px; border-color: inherit; border-left: 12px solid transparent; border-right: 12px solid transparent; border-top: 10px solid; transform: translateY(-50%); transition: all 0.3s ease-in-out; }

.accBtn.triangle.rotate::after { transform: translateY(-50%) rotateX(180deg); }

.accBtn.triangle_btt::after { content: ""; position: relative; top: 0px; width: 0; height: 0; border-radius: 20px; border-color: inherit; border-left: 12px solid transparent; border-right: 12px solid transparent; border-top: 10px solid; display: block; margin: 10px auto 0; transition: all 0.3s ease-in-out; }

.accBtn.rotate::after { transform: rotateX(180deg); }

.TabContainer .TabContent { background-color: #edf0f5; position: relative; z-index: 2; overflow: hidden; }

.TabContainer .TabContent > ul { transition: all 0.3s ease-in-out; }

.TabContainer .TabContent > ul > li { opacity: 0; z-index: -10; visibility: hidden; position: absolute; top: 0; left: 0; right: 0; transition: all 0.5s ease-in-out; }

.TabContainer .TabContent > ul > li.active { opacity: 1; z-index: 1; visibility: visible; }

.TabContainer .TabContent > ul > li div { padding-top: 20px; }

.TabContainer .TabContent p { padding: 9px 10% 0; margin: 0; }

.TabContainer .TabContent p.des { color: #838E95; font-size: 12px; }

.TabContainer .TabPager { display: table; min-width: 290px; }

.TabContainer .TabPager li { background-color: #fff; display: block; float: left; position: relative; margin: 0; padding: 9px 20px; box-shadow: 2px 1px 10px rgba(0, 0, 0, 0.4); transform: translateY(10px); transition: all 0.3s ease; cursor: pointer; color: #797b7d; }

.TabContainer .TabPager li p { margin: 0; }

.TabContainer .TabPager li.active { background-color: #edf0f5; z-index: 1; transform: translateY(0px); }

.rel { position: relative; }

.ovh { overflow: hidden !important; }

.ovs { overflow: auto; -webkit-overflow-scrolling: touch; /* Lets it scroll lazy */ }

.lt0 { letter-spacing: 0 !important; }

figure { margin: 0; text-align: center; line-height: 1; }

.fblock { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; }

.key { position: relative; }

.gMap { width: 100%; height: 100%; }

.txt_l { float: left; width: calc(100% - 385px); }

.txt_r { float: right; width: calc(100% - 385px); }

.image_alone { display: table; max-width: 500px; margin: 0 auto; border: 7px solid rgba(231, 231, 231, 0.5); border-radius: 11px; overflow: hidden; }

.totop { transition: all 0.3s ease; opacity: 0; visibility: hidden; cursor: pointer; position: fixed; z-index: 19; bottom: 45px; right: 95px; }

.totop.active { opacity: 1; visibility: visible; }

.totop .icon { background-image: url(../images/totop.png); background-repeat: no-repeat; background-size: 100% auto; border: 0px; width: 80px; height: 80px; margin: 0; }

@media only screen and (min-width: 769px) { .totop:hover .icon { opacity: 0.9; animation-name: bounce; } }

.bounce { animation-name: bounce; }

.animated { animation-duration: .5s; animation-fill-mode: both; animation-timing-function: linear; animation-iteration-count: infinite; }

@keyframes bounce { 0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); } }

.btn-group .btn a { display: block; }

.btn-group .btn.style01, .btn-group .btn.style02 { min-width: 180px; max-width: 300px; overflow: hidden; }

.btn-group .btn.style01 a, .btn-group .btn.style02 a { padding: 11px 10px 12px; position: relative; font-size: 22px; font-weight: 400; letter-spacing: 0.1em; line-height: 1.5; color: #fff; text-decoration: none; text-align: center; background-color: #000; }

.btn-group .btn.style01 a:hover, .btn-group .btn.style02 a:hover { opacity: 1; background-color: #9cb5ba; }

.btn-group .btn.style01 a::after, .btn-group .btn.style02 a::after { content: ""; display: block; position: absolute; transition: all .3s; right: 5px; bottom: 5px; border: 4px solid #fff; border-left-color: transparent; border-top-color: transparent; }

.btn-group .btn.style01.md a, .btn-group .btn.md.style02 a { font-size: 18px; }

.btn-group .btn.style01.md a::after, .btn-group .btn.md.style02 a::after { font-size: 23px; }

.btn-group .btn.style02 a { letter-spacing: 0.1em; line-height: 1.5; padding: 11px 10px 12px; background-color: #ccc; }

.btn-group .btn.bg01 a { background-color: #659cc1; }

.btn-group .btn.bg02 a { background-color: #f4bf0c; }

.slick-arrow { display: block; border: none; background-repeat: no-repeat; background-position: center; background-size: contain; background-color: transparent; position: absolute; top: 37%; width: 38px; height: 38px; transform: translateY(-50%); cursor: pointer; color: transparent; }

.slick-arrow:focus { outline: 0; }

.slick-slide, .slick-slide *:focus { outline: none; }

.slick-prev { left: -55px; }

.slick-next { right: -55px; }

/* Tablet
-------------------------------------------*/
@media only screen and (min-width: 769px) and (max-width: 1280px) { 
body { font-size: 87.5%; }
.btn.style01 a, .btn-group .btn.style02 a, .btn.style02 a { font-size: 14px; }
.totop { right: 10px; }
.totop .icon { width: 60px; height: 60px; } }

@media only screen and (min-width: 769px) and (max-width: 1170px) { .inner { max-width: none; padding-left: 50px; padding-right: 50px; } }

@media only screen and (min-width: 769px) and (max-width: 1000px) { .inner_sm { max-width: none; padding-left: 50px; padding-right: 50px; } }

/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                           Header - Footer                                */
/*==========================================================================*/
header { position: absolute; top: 0; left: 0; right: 0; z-index: 20; }

#header-top { background-color: transparent; position: fixed; width: 100%; top: 0; left: 0; z-index: 10; transition: 500ms ease; }

.header_top { height: 112px; transition: all 0.3s ease-in-out; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; max-width: 1440px; margin: 0 auto; align-items: center;}

.logo { margin-left: 50px; width: 27%; max-width: 384px; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: center; align-items: center; }

.logo a { display: block; width: 100%; text-align: center; }

.logo a img{ max-width: 100%; height: auto; overflow: hidden;}

.right_head { margin-right: 82px; width: 57%; height: 100%; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;}

.pc_navi { width: 71%; }

.m-tel{ width: 27%; max-width: 212px;}

.m-tel img{ max-width: 100%; height: auto; overflow: hidden;}

/*  click  */
.hamb-menu-click-active { background-color: #fff !important; box-shadow: rgba(0, 0, 0, 0.16) 0px 7px 20px !important;}

.hamb-menu-click-active .logo a img{ content: url(../images/menu-logo-b.png) !important; }

.hamb-menu-click-active .pc_navi > ul > li > a{ color: #282828 !important; }

/* scroll */
.menu-scroll-active { background-color: #fff !important; box-shadow: rgba(0, 0, 0, 0.16) 0px 7px 20px !important;}

.menu-scroll-active .logo a img{ content: url(../images/menu-logo-b.png) !important; }

.menu-scroll-active .m-tel img{ content: url(../images/menu-tel-b.png);}

.menu-scroll-active .pc_navi > ul > li > a{ color: #282828 !important; }

@keyframes aniscroll-navi {  from {bottom: -170px;} to {bottom: 0;}}

/* Menu lv1 */
.pc_navi > ul { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; text-align: center; justify-content: flex-end;}

.pc_navi > ul > li { position: relative;}

.pc_navi > ul > li:nth-child(1) { border-left: 0; width: 20%; }

.pc_navi > ul > li:nth-child(2) { width: 25%; }

.pc_navi > ul > li:nth-child(3) { width: 20%; }

.pc_navi > ul > li:nth-child(4) { width: 34%;}

.pc_navi > ul > li > a{ position: relative; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; flex-direction: column; margin: 0 auto; width: 100%; height: 112px; text-decoration: none; text-align: center; font-family: 'Shippori Mincho', serif; font-weight: 600; font-size: 15px; line-height: 1.5; letter-spacing: 0.1em; color: #fff;}

.pc_navi > ul > li > a::before{ content: ''; position: absolute; transition: transform .5s ease; bottom: 1px; left: 50%; width: 80%; height: 2px; background: #e19a3e; transform: scaleX(0) translateX(-50%);}

.pc_navi > ul > li > a:hover:before{ transform: scaleX(1) translateX(-50%);}

.pc_navi > ul > li > a span, .pc_navi > ul > li > p span { display: block; padding-top: 0px; font-size: 66.66666666666667%; font-weight: 600; color: #333; }

.pc_navi > ul > li > a.title, .pc_navi > ul > li > p.title { position: relative; }

.pc_navi > ul > li > a.title::after, .pc_navi > ul > li > p.title::after { content: ""; background: url(../images/shared_pc_navi_arrow.png) center no-repeat; background-size: contain; width: 11px; height: 6px; position: absolute; bottom: 5px; left: calc(50% - 6px); transition: all 0.5s ease; }

.pc_navi > ul > li:hover a.title::after, .pc_navi > ul > li:hover p.title::after { transform: translateY(5px); }

.pc_navi > ul > li.home a::before { width: 100%; height: 16px; display: block; margin-bottom: 10px; }

/* Menu lv2 */
.pc_navi > ul > li > .subInner { position: absolute; width: 220px; right: 50%; bottom: 0; padding-top: 0px; transform: translate(50%, 100%); transition: all 0.2s ease-in-out; opacity: 0; visibility: hidden; z-index: 1; }

.pc_navi > ul > li > .subInner.active { opacity: 1; visibility: visible; }

.pc_navi > ul > li > .subInner ul { background-color: rgba(255, 255, 255, 0.9); padding-bottom: 10px; }

.pc_navi > ul > li > .subInner ul li { padding: 0 10px; }

.pc_navi > ul > li > .subInner ul li a { height: auto; position: relative; display: block; padding: 12px 10px; border-bottom: 1px dashed rgba(214, 106, 57, 0.8); transition: all 0.2s ease; font-size: 14px; font-weight: 500; color: var(--col-black); text-decoration: none; text-align: left; letter-spacing: 0px; box-sizing: border-box; }

.pc_navi > ul > li > .subInner ul li a::before { background: none;}

.pc_navi > ul > li > .subInner ul li a:hover{ color: #d66a39; }

@media only screen and (min-width: 769px) and (max-width: 1280px) { .pc_navi > ul > li > a, .pc_navi > ul > li p { font-size: 13px; }
  .pc_navi > ul > li.home a::before { margin: 2px 0 1px; }
  .pc_navi > ul .subInner ul li a { font-size: 13px; } }

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

    .right_head { margin-right: 50px; }
}

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

    .header_top { height: 90px; }

    .right_head { margin-right: 30px; justify-content: flex-end;}

    .pc_navi{ width: 100%;}

    .logo { margin-left: 30px;}

    .m-tel{ display: none;}

    .pc_navi > ul > li > a{ height: 90px;}

}

/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                                INDEX                                     */
/*==========================================================================*/
.home_page .key { display: none;}

.home_page .topic_path { display: none; }

#mainContent:not(.home_page #mainContent){ background-color: #fff;}

/* .home_page #video-area{ display: block;} */

/* News Post */

/* .idx_new_list { display: flex; flex-direction: column; }

.idx_new_list a { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 1; }

.idx_new_list li { padding: 16px 0; position: relative; display: block; transition: all .3s; }

.idx_new_list li:hover { background-color: rgba(14, 66, 123, 0.05); }

.idx_new_list .date_new { width: 130px; flex-shrink: 0; color:#0e427b; font-weight: 500;}

.idx_new_list .news_txt { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #000;}

.idx_new_list p { font-size: 14px; line-height: 1.5; letter-spacing: .1em; } */
/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                                Under                                     */
/*==========================================================================*/
/* SITE MAP */

.under .sitemap { padding-top: 40px; }

.under .sitemap > ul > li p { margin-bottom: 0; }

.under .sitemap > ul > li a, .under .sitemap > ul > li p { display: block; width: 100%; padding: 15px 15px 15px 30px; border-bottom: dotted 1px #ccc; color: #333333; position: relative; box-sizing: border-box; }

.under .sitemap > ul > li a:before, .under .sitemap > ul > li p:before { content: ''; position: absolute; width: 15px; height: 3px; background: #ccc; left: 0; top: 50%; margin-top: -2px; }

.under .sitemap > ul > li p:after { content: ''; position: absolute; width: 3px; height: 14px; background: #ccc; left: 6px; top: 50%; margin-top: -7px; }

.under .sitemap > ul > li a:hover { text-decoration: none; background: rgba(0, 0, 0, 0.05); }

.under .sitemap > ul > li li a { padding-left: 70px; }

.under .sitemap > ul > li li a:before { left: 40px; }

/* END SITE MAP */

.under #mainContent:not( .page-interview #mainContent){ padding-bottom: 200px;}

.under #mainContent img:not(.page-interview #mainContent img) {width: 100%; height: 100%; object-fit: cover;}

.under #mainContent a{ text-decoration: none; }

.under .key { background-image: url(../images/key-bg.jpg); height: 640px; background-position: center center; background-size: cover; background-repeat: no-repeat;}

.under .key .inner { height: 100%; padding: 0px; }

.under .key .key_text { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; position: relative; height: 100%; }

.under .key .key_text h2{ color: #fff; }

.under h2 { display: table; padding: 0 23px; line-height: 1.5; font-size: 50px; font-weight: 500; text-align: left; color: #fff; letter-spacing: 0.14em; }

.under h2, .under h3, .under h4, .under h5, .under h6 { line-height: 36px;  font-family: var(--font-shb1); font-weight: 600; color: #d66a39;}

.under h2:last-child, .under h3:last-child, .under h4:last-child, .under h5:last-child, .under h6:last-child { margin-bottom: 0; }

.under h3 { background-size: 50px auto; position: relative; margin-bottom: 35px; color: #d66a39; font-size: 30px; font-weight: 500; letter-spacing: 0.1em; text-align: center; line-height: 60px;}

.under h3::after{ content: ""; display: block; height: 4px; width: 75px; margin: 0 auto; margin-top: 24px;   background: -webkit-gradient(linear, left top, right top, color-stop(50%, #e19a3e), color-stop(50%, #d66a39)); background: -webkit-linear-gradient(left, #e19a3e 50%, #d66a39 50%); background: linear-gradient(to right, #e19a3e 50%, #d66a39 50%);}

.under h4 { background-repeat: repeat; margin-bottom: 30px; position: relative; font-weight: 500; font-size: 24px; color: #d66a39; letter-spacing: 0.1em; border-bottom: 2px solid #f0f0f0; padding-bottom: 12px; line-height: 50px;}

.under h5 { margin-bottom: 20px; position: relative; font-weight: 500; font-size: 20px; color: #d66a39; letter-spacing: 0.1em; margin-left: 20px; line-height: 30px;}

.under h5::before {content: ""; border-left: 4px solid #f0f0f0; border-radius: 20px; position: absolute; left: -20px; height: 100%;}

.under h6 { position: relative; padding-left: 30px; margin-top: 100px; margin-bottom: 15px; font-weight: 600; font-size: 18px; color: #d66a39; letter-spacing: 3px; line-height: 36px;}

.under h6::before { content: ""; position: absolute; left: 0; top: 13px; height: 14px; width: 14px; border: 7px solid; box-sizing: border-box; border-radius: 50%; color: #f0f0f0;}

.under section:first-child h3 { margin-top: 200px; }

.under section h3 { margin-top: 100px; }

.under .secH4 { padding-top: 100px; }

.under .secH4:first-of-type { padding-top: 0; }

.under .secH5 { padding-top: 100px; }

.under .secH4 .secH5:nth-child(2){ padding-top: 0;} 

.under .secH5 h6:nth-child(2){ margin-top: 0;}

.under .imgBox.rowImg .image_l img, .under .imgBox.rowImg .image_r img { max-width: 100%; max-height: 600px; }

.under .imgBox.rowImg .image_l { float: left; margin-right: 20px; }

.under .imgBox.rowImg .image_r { float: right; margin-left: 20px; }

.under .imgBox.rowImg .image_l, .under .imgBox.rowImg .image_r { max-width: 500px; margin-bottom: 15px; margin-top: 5px;}

.under .imgBox.rowImg .txt_l { float: unset; }

.under .imgBox.rowImg .txt_r { float: unset; }

.under .imgBox.rowImg .txt_l, .under .imgBox.rowImg .txt_r { width: 100%; }

.under .imgBox.rowImg.large .image_l, .under .imgBox.rowImg.large .image_r { max-width: 440px; }

.under .imgBox.rowImg.large .txt_l, .under .imgBox.rowImg.large .txt_r { width: 100%; }

.under .imgBox.rowImg.full .image_l, .under .imgBox.rowImg.full .image_r { max-width: 60vw; }

.under .imgBox.colImg .list { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }

.under .imgBox.colImg p { margin-bottom: 5px; }

.under .imgBox.colImg p:last-child { margin-bottom: 0; }

.under .imgBox.colImg figure { margin-bottom: 15px; }

.under .imgBox.colImg .text p { font-size: 1em; }

.under .imgBox.colImg .text .ttl { font-size: 1.375em; font-weight: bold; line-height: 1.8; text-align: center; color: #d66a39; }

.under .imgBox.colImg3 .item { width: 32%; }

.under .imgBox.colImg3 img {width: 100%;}

.under .imgBox.colImg2 .item { width: 49%; }

.under .imgBox.colImg2 img {width: 100%;}

.under .imgBox.colImg1 .item { width: 100%; }

/* .under .acf_block h3, .under .acf_block h4, .under .acf_block h5 { margin-bottom: 0; } */

.under .acf_block .text_h3 { margin: 45px 0 0; }

.under .acf_block .text_h4 { margin: 30px 0 0; }

.under .acf_block .text_h5 { margin: 20px 0 0; }

.under .acf_block .list01 { margin-top: 20px; }

.under table { border-radius: 3px; }

.under table.rollTable { width: 100%; }

.under table.tbl_style01 th, .under table.tbl_style01 td { border: 1px solid #707070; padding: 0.625rem; }

.under table.tbl_style01 th img, .under table.tbl_style01 td img { max-width: 100%; }

.under table.tbl_style01 th { background-color: #565656; color: #fff; font-size: 1.125em; font-weight: normal; text-align: center; }

.under table.tbl_style01 td { background-color: #fff; color: #383838; font-size: 1em; }

.under table.tbl_style01.rowHead tr th:not(:last-child) { border-right: 1px solid #707070; }

.under table.tbl_style01.colHead tr:not(:last-child) th { border-bottom: 1px solid #707070; }

.under table.tbl_style02 th, .under table.tbl_style02 td { border: 2px solid #9dba38; border-left: none; border-right: none; padding: 0.625em; }

.under table.tbl_style02 th img, .under table.tbl_style02 td img { max-width: 100%; }

.under table.tbl_style02 th { background: none; font-weight: normal; font-size: 1.125em; color: #9dba38; }

.under table.tbl_style02 td { font-size: 1em; }

.under .tbl_note { display: none; margin-top: 10px; color: #b4b4b4; font-size: 11px; letter-spacing: 0; }

@media only screen and (max-width: 1000px) and (min-width: 769px) { .under table.tbl_style01 th, .under table.tbl_style01 td { padding: 0.5rem; }
  .under table.tbl_style01 th { font-size: 1em; }
  .under table.tbl_style01 td { font-size: 0.9em; }
  .under table.tbl_style02 th { font-size: 1em; }
  .under table.tbl_style02 td { font-size: 0.9em; } }

.under ul.list01.mcol-2 { position: relative; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -webkit-box; display: -ms-flexbox; display: flex; flex-wrap: wrap; }

.under ul.list01.mcol-2 li { width: 50%; }

.under ul.list01 li { background-size: 10px auto; position: relative; padding-left: 20px; padding-bottom: 10px; letter-spacing: 1.6px; }

.under ul.list01 li:last-child { padding-bottom: 0; }

.under ul.list01 li::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: #333; position: absolute; left: 0; top: 0.4em; }

.under .list_note { margin-top: 15px; padding-left: 20px; }

.under .list_note.no_mt { margin-top: 0; }

.under .topic_path .inner{ max-width: 1280px;}

.under .topic_path { padding: 17px 0;}

.under .topic_path ul::after { content: ""; display: block; clear: both; }

.under .topic_path ul li { float: left; text-transform: uppercase; color: var(--col-black); font-size: 10px; line-height: 1.5; letter-spacing: .1em}

.under .topic_path a { text-decoration: none; color: #d66a39;}

.under .topic_path a:hover { opacity: 1; text-decoration: underline; }

.under .topic_path span { display: inline-block; padding: 0 8px;}

.under .anchor-links { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: center; padding: 20px 0 0; }

.under .anchor-links > div { background-color: #555; border-radius: 3px; position: relative; display: block; min-width: 135px; width: 19%; margin: 0% 0.5% 1%; text-align: center; color: #fff; font-size: 0.875em; line-height: 1.5; letter-spacing: 0.15em; }

.under .anchor-links > div a { display: block; width: 100%; padding: 10px 5px 9px; color: inherit; font-size: inherit; line-height: inherit; }

.under .anchor-links > div::after { content: ""; border: 4px solid; border-bottom-color: transparent; border-left-color: transparent; border-right-color: transparent; position: absolute; top: auto; bottom: 2px; left: calc(50% - 4px); right: auto; line-height: 1; }

.under .anchor-links > div:hover a { opacity: 1; }

.under .anchor-links > div:hover::after { bottom: 0; }

.under .anchor-links > div.ext::after { content: "\003e"; border: 0; position: absolute; top: calc(50% - 0.5em); bottom: auto; left: auto; right: 7px; font-size: 0.857em; line-height: 1; letter-spacing: 0; transform: scaleX(0.5); }

.under .anchor-links > div.ext:hover::after { right: 5px; }

.under #socialbuttons { display: table; margin: 20px auto 10px; }

.under #socialbuttons > div { float: left; margin-right: 10px; font-size: 11px; overflow: hidden; }

.under #socialbuttons .line { margin-right: 0px; }

.under .clinic_tbl01 th { width: 350px; text-align: right; }

.under .clinic_tbl02 { text-align: center; }

.under .clinic_tbl02 th:first-child { width: 350px; }

.under .clinic_tbl02 th:not(:first-child) { width: calc((100% - 350px) / 7); }

.under .teeth_box .secH4 { width: 48%; }

.under .teeth_box .secH5 { padding-top: 20px !important; }

.under .teeth_box img { max-height: 180px; }

.under .teeth_box p { font-size: 14px; }

.under .access_box_img01 .block { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }

.under .access_box_img01 .block:nth-child(even) .big { order: 1; }

.under .access_box_img01 .block .big { width: calc((580 / 1160) * (100% - 10px)); }

.under .access_box_img01 .block .small { width: calc((580 / 1160) * (100% - 10px)); display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; }

.under .access_box_img01 .block .small figure { width: calc((100% - 10px) * 0.5); }

.under .access_box_img01 .block figure { border-radius: 0px; overflow: hidden; margin-bottom: 10px; }

.under .access_box_img02 .block { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }

.under .access_box_img02 .block:nth-child(even) .big { order: 1; }

.under .access_box_img02 .block .big { width: calc((640 / 1160) * (100% - 10px)); }

.under .access_box_img02 .block .small { width: calc((520 / 1160) * (100% - 10px)); display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; }

.under .access_box_img02 .block .small figure { width: calc((100% - 10px) * 0.5); }

.under .access_box_img02 .block figure { border-radius: 10px; overflow: hidden; margin-bottom: 10px; }

/* START BLOG
------------------------------------------------------------------------*/
#pagination { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; margin: 40px auto 0; }

#pagination:empty { display: none; }

#pagination a, #pagination span { background-color: #555; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; border-radius: 100%; margin: 10px 5px; width: 32px; height: 32px; color: #fff; line-height: 1; }

#pagination a.prev, #pagination a.next, #pagination span.prev, #pagination span.next { background-repeat: no-repeat; background-position: center; background-size: 7px auto; color: transparent; }

#pagination a.prev, #pagination span.prev { background-image: url(../images/shared_blog_arrow_prev.svg); }

#pagination a.next, #pagination a.prev { position: relative;  }

#pagination a.next::before, #pagination a.prev::before { content: ''; display: inline-block; position: absolute; height: 5px;  width: 5px; border: 1px solid #fff; border-width: 1px 1px 0 0;}
#pagination a.next::before{ transform: rotate(45deg);}
#pagination a.prev::before{ transform: rotate(-135deg);}

@media screen and (min-width: 0\0) and (min-resolution: 72dpi) { #pagination { /* for IE 9 and above */ }
  #pagination a, #pagination span { padding-top: 2px; } }

#pagination a:hover { text-decoration: none; opacity: 0.7; }

#pagination span { opacity: 0.5; }

#pagination .active a, #pagination a.active:hover { background: none repeat scroll 0 0 #000000; color: #FFFFFF; }

/* .blog-content h4 { border-bottom: 2px solid #ccd568;font-weight: 600; } */

.blog-content .date { margin-bottom: 20px; text-align: center; color: #000; }

.blog_list_style01 .item { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 30px; border-radius: 30px; box-shadow: 0 1px 3px rgb(0 0 0 / 20%), 0 1px 2px rgb(0 0 0 / 24%); transition: all 0.3s cubic-bezier(.25,.8,.25,1);}

.blog_list_style01 .item:hover{ box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22); }

.blog_list_style01 .item figure { background-color: white; position: relative; overflow: hidden; border-top-left-radius: 30px; border-bottom-left-radius: 30px; width: 220px; height: 220px; border-right: 1px solid #d66a39;}

.blog_list_style01 .item figure img { max-width: 100%; max-height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

.blog_list_style01 .item .info { width: calc(100% - 250px); position: relative; padding-bottom: 40px; padding-right: 30px; box-sizing: border-box;}

.blog_list_style01 .item .info p { margin-bottom: 0; line-height: 1.5; }

.blog_list_style01 .item .info .date { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; align-items: center; margin-bottom: 15px; padding-top: 15px; font-size: 90%; }

.blog_list_style01 .item .info .date .tag { display: inline-block; margin-left: 20px; color: transparent; font-size: 90%; letter-spacing: -1em; }

.blog_list_style01 .item .info .date .tag a { background-color: #d66a39; display: inline-block; padding: 3px 10px; color: #fff; letter-spacing: 0; text-decoration: none; line-height: 17px; border-radius: 10px;}

.blog_list_style01 .item .info .date .tag a:not(:first-child){ margin-left: 10px; }

.blog_list_style01 .item .info .date .tag a:hover{ opacity: .7; transition: opacity 0.3s ease;}

.blog_list_style01 .item .info .ttl { margin-bottom: 10px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; text-decoration: underline; font-size: 120%; font-weight: 600; color: #333333; }

.blog_list_style01 .item .info .ttl a { color: #d66a39;}

.blog_list_style01 .item .info .ttl a:hover { opacity: .6; }

.blog_list_style01 .item .info .button { background-color: #ddd; position: absolute; bottom: 20px; right: 20px ; border-radius: 10px; transition: 0.8s;}

.blog_list_style01 .item .info .button a { position: relative; z-index: 1; display: block; padding: 0 10px; font-size: 90%; color: #333; text-decoration: none; line-height: 30px;}

.blog_list_style01 .item .info .button a::before { opacity: 0; }

/* .blog_list_style01 .item .info .button::after { content: ""; background-color: #d66a39; position: absolute; z-index: 0; top: 0; bottom: 0; right: 0; width: 0; transition: all 0.3s ease; border-radius: 10px;} */

.blog_list_style01 .item .info .button:hover a { opacity: 1; color: #fff; }

.blog_list_style01 .item .info .button:hover { background-color: #d66a39; }

@media only screen and (max-width: 900px){
    .blog_list_style01 .item figure{ width: 150px; height: 150px;}
    .blog_list_style01 .item .info{ width: calc(100% - 165px); padding-bottom: 0; padding-right: 15px;}
    .blog_list_style01 .item .info .ttl{ font-size: 100%;}
    .blog_list_style01 .item .info .des { font-size: 75%; }
    .blog_list_style01 .item .info .button a{ font-size: 65%; line-height: 20px;}
    .blog_list_style01 .item .info .button{ right: 20px; bottom: 8px;}
}

@media only screen and (max-width: 640px) { 
  .blog_list_style01 .item { display: block; border-radius: 10px;}
  .blog_list_style01 .item figure { width: 100%; height: 200px; margin: 0 auto; border-top-left-radius: 10px;  border-top-right-radius: 10px; border-bottom-left-radius: unset; border-right: unset;}
  .blog_list_style01 .item .info { width: 100%; max-width: unset; margin: 0 auto; padding-bottom: 0; padding-right: 0;}
  .blog_list_style01 .item .info .button { position: relative; display: block; right: 0; bottom: 0; padding: 10px 0; border-radius: 10px ; border-top-left-radius: unset; border-top-right-radius: unset; margin-top: 10px ; } 
  .blog_list_style01 .item .info .date { justify-content: flex-start; padding: 0 20px; margin-top: 20px;}
  .blog_list_style01 .item .info .ttl { width: calc(100% - 40px );  margin: 0 auto; font-size: 16px;}
  .blog_list_style01 .item .info .button a { text-align: center; } 
  .blog_list_style01 .item .info .des { font-size: 12px; padding: 20px 20px 10px;} }

.blog_list_style02.colImg .list { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: flex-start; }

.blog_list_style02.colImg p { margin-bottom: 5px; }

.blog_list_style02.colImg p:last-child { margin-bottom: 0; }

.blog_list_style02.colImg figure { margin-bottom: 15px; }

.blog_list_style02.colImg .text p { font-size: 1em; }

.blog_list_style02.colImg .text .ttl { font-family: inherit; font-size: 1.1em; font-weight: bold; line-height: 1.8; text-align: center; color: #0e7cad; }

.blog_list_style02.colImg4_blog .item { width: calc(96% / 4); margin-right: 1%; margin-bottom: 15px; position: relative; }

.blog_list_style02.colImg4_blog .item:nth-child(4) { margin-right: 0; }

.blog_list_style02.colImg4_blog .item a { position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: 1; }

.blog_list_style02.colImg4_blog .item .img { background: url(../images/shared_blog_logo.png) center no-repeat; background-size: contain; background-color: #fff; border: 1px solid #000; position: relative; width: 100%; height: 400px; margin-bottom: 15px; }

.blog_list_style02.colImg4_blog .item .img:before { position: absolute; top: 0; bottom: 0; left: 0; right: 0; }

.blog_list_style02.colImg4_blog .item .img img { transform: translate(-50%, -50%); transition: all 0.3s ease; position: absolute; top: 50%; left: 50%; max-height: 100%; max-width: 100%; }

.blog_list_style02.colImg4_blog .item:hover a { opacity: 1; }

.blog_list_style02.colImg4_blog .item:hover .img img { filter: blur(5px) grayscale(50%); transform: translate(-50%, -50%) scale(1.15); }

.blog_list_style02.colImg4_blog figure { background-color: #ddd; position: relative; overflow: hidden; width: 100%; height: 100%; }

@media only screen and (max-width: 1000px) and (min-width: 769px) { .blog_list_style02.colImg4_blog .item .img { height: 30vw; } }

@media only screen and (max-width: 768px) { .blog_list_style02.colImg4_blog .item .img { height: 280px; }
  .blog_list_style02.colImg4_blog figure { height: 260px; } }

@media only screen and (max-width: 640px) { .blog_list_style02.colImg .list { justify-content: space-around; }
  .blog_list_style02.colImg .item { margin-bottom: 15px; }
  .blog_list_style02.colImg figure { margin-bottom: 5px; }
  .blog_list_style02.colImg .text { font-size: 14px; }
  .blog_list_style02.colImg4_blog .item { width: 49%; }
  .blog_list_style02.colImg4_blog .item .img { height: 48vw; }
  .blog_list_style02.colImg4_blog figure { height: 48vw; } }

.blog_detail_style02 { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-around; margin-bottom: 30px; }

.blog_detail_style02 .box_gallery { width: 35%; max-width: 400px; }

.blog_detail_style02 .box_gallery .main_img { background: #ededed; position: relative; height: 400px; margin-bottom: 11px; }

.blog_detail_style02 .box_gallery .main_img .item { transition: all 0.3s ease; position: absolute; top: 0; bottom: 0; left: 0; right: 0; opacity: 0; }

.blog_detail_style02 .box_gallery .main_img .item.active { opacity: 1; }

.blog_detail_style02 .box_gallery .main_img .img { overflow: hidden; margin: 0; width: 100%; height: 100%; }

.blog_detail_style02 .box_gallery .main_img .img img { transform: translate(-50%, -50%); position: absolute; top: 50%; left: 50%; max-width: 100%; max-height: 100%; }

.blog_detail_style02 .box_gallery .thumb { display: flex; flex-wrap: wrap; margin-bottom: 10px; }

.blog_detail_style02 .box_gallery .thumb li { background-color: #ededed; transition: all 0.2s ease; width: calc(100% / 8 - 4.4px); margin-right: 5px; margin-bottom: 5px; height: 20vw; max-height: 40px; overflow: hidden; position: relative; cursor: pointer; text-align: center; }

.blog_detail_style02 .box_gallery .thumb li:nth-child(8n+0) { margin-right: 0; }

.blog_detail_style02 .box_gallery .thumb li:hover { opacity: 0.7; }

.blog_detail_style02 .box_gallery .thumb li img { width: auto; max-height: 100%; max-width: 100%; overflow: hidden; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

.blog_detail_style02 .box_gallery .thumb.col_5 li { width: calc(100% / 5 - 4px); max-height: 77px; }

.blog_detail_style02 .box_gallery .thumb.col_5 li:nth-child(5) { margin-right: 0; }

.blog_detail_style02 .box_gallery.withSlick .main_img { height: auto; }

.blog_detail_style02 .box_gallery.withSlick .main_img .item { height: 400px; }

.blog_detail_style02 .box_gallery.withSlick .main_img .item:nth-child(n) { display: block; }

.blog_detail_style02 .box_gallery.withSlick .thumb li { opacity: 0.5; }

.blog_detail_style02 .box_gallery.withSlick .thumb li::after { content: ""; transition: all 0.2s ease; position: absolute; top: 0; left: 0; right: 0; bottom: 0; border: 1px solid transparent; z-index: 1; }

.blog_detail_style02 .box_gallery.withSlick .thumb li.active { opacity: 1; }

.blog_detail_style02 .box_gallery.withSlick .thumb li.active::after { border-color: #ff9933; }

.blog_detail_style02 .box_gallery.withSlick .thumb li:hover { opacity: 1; }

.blog_detail_style02 .box_gallery.withSlick .controls p { display: table; cursor: pointer; }

.blog_detail_style02 .box_gallery.withSlick .controls p:hover { text-decoration: underline; }

.blog_detail_style02 .box_info { width: 62%; max-width: 710px; }

.blog_detail_style02 .box_info .intro { margin-bottom: 20px; }

.blog_detail_style02 .box_info table { /* &.tbl_style03{ th{ width: 38%; } } */ }

.blog_detail_style02 .box_info table th { width: 30%; background: #f5f5f5; color: #1b1b1b; }

.blog_detail_style02.noGallery .box_info { max-width: 100%; width: 100%; }

@media only screen and (max-width: 768px) { .blog_detail_style02 .box_gallery { width: 100%; margin: 0 auto 30px; }
  .blog_detail_style02 .box_gallery .main_img { max-height: 400px; height: 100vw; }
  .blog_detail_style02 .box_info { width: 100%; margin: 0 auto; }
  .blog_detail_style02 .box_info table th { width: 100%; }
  .blog_detail_style02 .box_info table.tbl_style03 { border-bottom: none; } }

.main_blog_container { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 50px;}

.main_blog_container .main_blog_content { max-width: 100%; width: calc(100% - 250px); }

.main_blog_container .main_blog_content > div { padding-top: 0; }

.main_blog_container .sidebar { width: 220px;}

.main_blog_container .sidebar .txt_head, .main_blog_container .sidebar .widgettitle { border-top-left-radius: 20px; border-top-right-radius: 20px; background-color: #d66a39; transform: none; position: static; display: block; margin-bottom: 0; padding: 10px; width: 100%; writing-mode: horizontal-tb; font-size: 18px; color: #fff; text-align: center; box-sizing: border-box;}

.main_blog_container .sidebar .widgettitle:not(:first-child) { margin-top: 30px; }

.main_blog_container .sidebar ul:not(.children) { background-color: #faebd7; border-top: 0; padding: 0 10px; border-bottom-left-radius: 20px ; border-bottom-right-radius: 20px ;}

.main_blog_container .sidebar ul:not(.children) > li { border-bottom: 1px solid #d66a39; padding: 5px 10px; font-size: 80%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}

.main_blog_container .sidebar ul:not(.children) > li:last-child { border-bottom: 0; }

.main_blog_container .sidebar ul:not(.children) > li a { color: inherit; font-size: inherit; text-decoration: underline; }

.main_blog_container .sidebar ul:not(.children) > li a:hover { text-decoration: none; }

.main_blog_container .sidebar ul.children { padding: 7px 7px; }

.main_blog_container .sidebar ul.children li { padding-bottom: 5px; }

.main_blog_container .sidebar ul.children li:last-child { padding-bottom: 0; }

@media only screen and (max-width: 900px){
   
    .main_blog_container .main_blog_content{ width: calc(100% - 165px);}
    .main_blog_container .sidebar { width: 150px;}
    .main_blog_container .sidebar .txt_head, .main_blog_container .sidebar .widgettitle{ font-size: 14px;}
}

@media only screen and (max-width: 768px) { .main_blog_container .main_blog_content { width: 100%; margin: 0 auto; }
  .main_blog_container .sidebar { display: none; } }

.blog_post_button { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; max-width: 600px; margin: 100px auto 0; }

.blog_post_button > div { border-radius: 10px; position: relative; width: 32%; color: #d66a39; text-align: center; line-height: 1; font-size: 0.9em; /* &.prev, &.next { span { display: block; a { &::after { content: ""; background-repeat: no-repeat; background-position: center; background-size: auto 10px; transform: translateY(-50%); position: absolute; top: 50%; width: 15px; height: 15px; text-decoration: none !important; } } } } &.prev { a { padding-left: 25px; &::after { background-image: url(../images/angle-double-left.svg); left: 7px; } } } &.next { a { padding-right: 25px; &::after { background-image: url(../images/angle-double-right.svg); right: 7px; } } } &:hover { &.prev { a { &::after { } } } &.next { a { &::after { } } } } */ }

/* .blog_post_button > div::before, .blog_post_button > div::after { content: ""; transition: all 0.2s ease; position: absolute; top: 0; left: 0; width: 100%; height: 100%; } */

/* .blog_post_button > div::before { background-color: transparent; border: 1px solid #d66a39;} */

/* .blog_post_button > div::after { border: 1px solid #d66a39; opacity: 0; transform: scale(1.2, 1.2); } */

.blog_post_button > div a { border: 1px solid #d66a39; transition: all 0.3s; display: block; position: relative; z-index: 1; padding: 11px 10px 10px; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-transform: uppercase; line-height: inherit; color: inherit; text-align: center; text-decoration: none; }

/* .blog_post_button > div:hover::before { opacity: 0; transform: scale(0.8); }

.blog_post_button > div:hover::after { opacity: 1; transform: scale(1); } */

.blog_post_button > div:hover a { color: #fff; background-color: #d66a39; }

/* END BLOG
------------------------------------------------------------------------*/
/* START Mail
------------------------------------------------------------------------*/
.contact-form-style01 .contact-table { background-size: cover; width: 100%; margin: 0 auto 0px; border-radius: 5px; overflow: hidden; position: relative; }

.contact-form-style01 .contact-table::before { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; }

.contact-form-style01 .contact-table input, .contact-form-style01 .contact-table select, .contact-form-style01 .contact-table textarea { border: 1px solid; padding: 4px 8px; border-radius: 5px; font-size: 1rem; }

.contact-form-style01 .contact-table input { width: 100%; }

.contact-form-style01 .contact-table textarea { max-width: 100%; width: 100%; height: 7em; }

.contact-form-style01 .contact-table input, .contact-form-style01 .contact-table textarea { transition: all 0.2s ease-in-out; box-sizing: border-box;}

.contact-form-style01 .contact-table input[type="radio"], .contact-form-style01 .contact-table input[type="checkbox"] { margin: 5px 3px 5px 0px; width: auto; }

.contact-form-style01 .contact-table [readonly*="readonly"] { background: none; border: 0; font-weight: bold; }

.contact-form-style01 .contact-table dl { position: relative; z-index: 1; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; }

.contact-form-style01 .contact-table dl:last-child dt, .contact-form-style01 .contact-table dl:last-child dd { border-bottom: 0px; }

.contact-form-style01 .contact-table dt { width: 400px; padding: 15px 20px; font-size: 20px; }

.contact-form-style01 .contact-table dt span { display: inline-block; border-radius: 7px; padding: 2px 7px; margin-left: 5px; font-size: 70%; line-height: 1; }

.contact-form-style01 .contact-table dd { width: calc(100% - 400px); padding: 15px 25px; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -webkit-box; display: -ms-flexbox; display: flex; flex-wrap: wrap; align-items: center; }

.contact-form-style01 .contact-table .postal_code { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; }

.contact-form-style01 .contact-table .inline span { max-width: 75px; margin: 0 5px; text-align: center; }

.contact-form-style01 .contact-table .inline input { text-align: center; }

.contact-form-style01 .contact-table .clockpicker input { width: 70px; text-align: center; }

.contact-form-style01 .contact-table input:not([type='radio']):not([type='checkbox']):focus, .contact-form-style01 .contact-table textarea:focus { color: #495057; background-color: #fff; border-color: #80bdff; outline: 0; box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.contact-form-style01 .confirm-table textarea { resize: none; width: 100%; }

.contact-form-style01 .confirm-table input:not([type='radio']):not([type='checkbox']):focus, .contact-form-style01 .confirm-table textarea:focus { color: inherit; background-color: transparent; border-color: transparent; outline: 0; box-shadow: none; }

.contact-form-style01 .input_btn, .contact-form-style01 .button.thanks_btn { position: relative; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; max-width: 520px; margin: 40px auto 0; }

.contact-form-style01 .input_btn input, .contact-form-style01 .input_btn a, .contact-form-style01 .button.thanks_btn input, .contact-form-style01 .button.thanks_btn a { color: inherit; }

.contact-form-style01 .input_btn input[type="button"], .contact-form-style01 .input_btn input[type="submit"], .contact-form-style01 .button.thanks_btn { display: block; width: 200px; height: 45px; border: none; padding: 10px; text-align: center; font-size: 100%; font-weight: normal; margin: 0px 10px 10px; text-decoration: none; cursor: pointer; }

.contact-form-style01 .input_btn input[type="button"]:hover, .contact-form-style01 .input_btn input[type="submit"]:hover, .contact-form-style01 .button.thanks_btn:hover { opacity: 0.8; }

.contact-form-style01 .input_btn input[type="button"], .contact-form-style01 .input_btn input[type="submit"], .contact-form-style01 .button.thanks_btn { background-color: #ddebf2; color: #0e7cad; }

.contact-form-style01 .contact-table { border: 1px solid #ddebf2; }

.contact-form-style01 .contact-table input, .contact-form-style01 .contact-table select, .contact-form-style01 .contact-table textarea { border-color: #ddd; }

.contact-form-style01 .contact-table dt { display: flex; align-items: center; background-color: #ddebf2; border-bottom: 1px solid #fff; color: #0e7cad; }

.contact-form-style01 .contact-table dt span { background-color: #ffffff; color: #ff3c7f; }

.contact-form-style01 .contact-table dd { border-bottom: 1px solid #ddebf2; }

.contact-form-style01 .wpcf7-not-valid-tip { display: block; margin: 3px 7px 0; }

.contact-form-style02 { background: url(../images/contact-form-bg.jpg); padding: 80px 50px 80px; }

.contact-form-style02 .contact-table { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; }

.contact-form-style02 .contact-table input:not([type='radio']):not([type='checkbox']), .contact-form-style02 .contact-table textarea { background-clip: padding-box; border: none; outline: 0; box-shadow: none; height: auto; display: block; border-radius: 0; width: 100%; padding-bottom: 15px; margin-bottom: 0; border-bottom: 1px dashed; transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out; font-size: 1em; font-weight: 400; line-height: 1.5; text-transform: none; }

.contact-form-style02 .contact-table textarea { max-width: 100%; border: 1px dashed; padding: 20px; }

.contact-form-style02 .contact-table dl { position: relative; z-index: 0; width: 49%; margin-bottom: 60px; }

.contact-form-style02 .contact-table dl:last-child { margin-bottom: 0; }

.contact-form-style02 .contact-table dl dt { font-size: 0.9em; }

.contact-form-style02 .contact-table dl dt span { position: relative; top: -0.1em; display: inline-block; padding: 0px 5px; margin-left: 8px; border-radius: 7px; font-size: 0.7em; }

.contact-form-style02 .contact-table dl.inline dd { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-around; align-items: center; }

.contact-form-style02 .contact-table dl.inline input { text-align: center; }

.contact-form-style02 .contact-table dl.hasBD dd { padding: 15px; border: 1px dashed; transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out; }

.contact-form-style02 .contact-table dl.full { width: 100%; padding: 20px 0; }

.contact-form-style02 .contact-table dl.full dt { padding-bottom: 15px; }

.contact-form-style02 .contact-table dl:not(.full) dt { position: absolute; z-index: 0; bottom: 15px; left: 0px; transform: translateY(0%); transition: all 0.4s ease; }

.contact-form-style02 .contact-table dl:not(.full) dd { padding: 0px 0px; }

.contact-form-style02 .contact-table dl:not(.full).non-empty dt, .contact-form-style02 .contact-table dl:not(.full).focus dt { bottom: -5px; transform: translateY(100%); font-size: 0.75em; }

.contact-form-style02 .contact-table dl:not(.full) .wpcf7-not-valid-tip { position: absolute; bottom: 0px; left: 0; right: 0; z-index: -1; }

.contact-form-style02 .confirm-table dl:not(.hasBD):not(.non-empty) { opacity: 0.45; }

.contact-form-style02 .wpcf7-not-valid-tip { display: block; text-align: right; }

.contact-form-style02 .input_btn, .contact-form-style02 .button.thanks_btn { position: relative; display: table; margin: 40px auto 0; height: 45px; }

.contact-form-style02 .input_btn input, .contact-form-style02 .input_btn a, .contact-form-style02 .button.thanks_btn input, .contact-form-style02 .button.thanks_btn a { color: inherit; }

.contact-form-style02 .input_btn::before, .contact-form-style02 .input_btn::after, .contact-form-style02 .button.thanks_btn::before, .contact-form-style02 .button.thanks_btn::after { content: ""; position: absolute; left: 50%; width: 100%; height: 2px; transform: translateX(-50%); transition: all 0.3s cubic-bezier(0.34, 0.36, 0.06, 1.01); }

.contact-form-style02 .input_btn::before, .contact-form-style02 .button.thanks_btn::before { top: 0; }

.contact-form-style02 .input_btn::after, .contact-form-style02 .button.thanks_btn::after { bottom: 0; }

.contact-form-style02 .input_btn:hover::before, .contact-form-style02 .button.thanks_btn:hover::before { top: 100%; width: 80%; }

.contact-form-style02 .input_btn:hover::after, .contact-form-style02 .button.thanks_btn:hover::after { bottom: -7px; width: 60%; }

.contact-form-style02 .input_btn input[type="button"], .contact-form-style02 .input_btn input[type="submit"], .contact-form-style02 .button.thanks_btn { background-color: transparent; border: none; outline: 0; padding: 10px; cursor: pointer; text-align: center; font-size: 100%; font-weight: normal; text-decoration: none; }

.contact-form-style02 .input_btn, .contact-form-style02 .button.thanks_btn { color: #333; }

.contact-form-style02 .input_btn::before, .contact-form-style02 .input_btn::after, .contact-form-style02 .button.thanks_btn::before, .contact-form-style02 .button.thanks_btn::after { background-color: #fcbb45; }

.contact-form-style02 .contact-table input, .contact-form-style02 .contact-table textarea { background-color: transparent; border-color: #a1a3a2; color: #495057; }

.contact-form-style02 .contact-table input:focus, .contact-form-style02 .contact-table textarea:focus { border-color: #000; color: #495057; }

.contact-form-style02 .contact-table dl.hasBD dd { border-color: #a1a3a2; color: #495057; }

.contact-form-style02 .contact-table dl.hasBD.focus dd { border-color: #000; color: #495057; }

.contact-form-style02 .contact-table dl dt { font-size: 0.9em; }

.contact-form-style02 .contact-table dl dt span { background-color: #353535; color: #ffffff; }

.screen-reader-response { display: none; }

.wpcf7-not-valid-tip { font-size: 80%; color: #ff3c7f; }

.wpcf7-response-output { padding-top: 20px; }

.wpcf7-list-item { margin-right: 15px; }

.wpcf7-list-item-label { color: #000; }

.wpcf7-form-control-wrap { width: 100%; }

.captcha_box { display: table; margin: 50px auto 0; }

@media only screen and (max-width: 1000px) and (min-width: 769px) { .contact-form-style01 .contact-table dt { width: 40%; }
  .contact-form-style01 .contact-table dd { width: 60%; }
  .contact-form-style02 { padding: 50px 30px 50px; } }

@media only screen and (max-width: 768px) { .contact-form-style01 .contact-table dl { display: block; }
  .contact-form-style01 .contact-table dt, .contact-form-style01 .contact-table dd { width: 100%; box-sizing: border-box;}
  .contact-form-style01 .contact-table dd { border-color: transparent; }
  .contact-form-style01 .contact-table input, .contact-form-style01 .contact-table textarea { width: 100%; }
  .contact-form-style01 .contact-table input[type="checkbox"], .contact-form-style01 .contact-table input[type="radio"] { width: auto; }
  .contact-form-style01 .wpcf7-list-item { display: block; }
  .contact-form-style02 { padding: 40px 30px 40px; }
  .contact-form-style02 .contact-table input, .contact-form-style02 .contact-table textarea { padding-bottom: 20px; text-align: center; }
  .contact-form-style02 .contact-table dl { width: 100%; }
  .contact-form-style02 .contact-table dl dt { width: 100%; text-align: center; }
  .contact-form-style02 .contact-table dl:not(.full) dt { bottom: 20px; }
  .contact-form-style02 .contact-table dl:not(.full).non-empty dt, .contact-form-style02 .contact-table dl:not(.full).focus dt { font-size: 0.9em; }
  .contact-form-style02 .wpcf7-not-valid-tip { text-align: center; } }

/* END Mail*/
/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/

/*# sourceMappingURL=style.css.map */

/*# content editor */
.box_hp_mainvisual {
    background: #fff;
    text-align: center;
    color: #292929;
    padding: 50px 50px;
    position: absolute;
    right: 60px;
    bottom: 110px;

}

.communication .box_hp_mainvisual {
    padding: 50px 20px;
}

.main_txt {
    margin-bottom: 0;
    font-size: 30px;
    font-weight: bold;
    line-height: 1.3em;
}

.main_txt_h {
    font-size: 35px;
}

.box_hb_stt {
    background: #FA8F20;
    color: #fff;
    text-align: center;
    border-radius: 50%;
    position: absolute;
    font-weight: bold;
    height: 130px;
    width: 130px;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 0;
    bottom: 0;
    transform: translate(-60%, 50%);
    margin-bottom: 0;
}

.main_hp_box .inner {
    position: relative;
    height: 100%;
}

.under #main.lexpage {
    padding: 0 0;
}

.archive_single_list_exlp .boxmain_tab a:last-child {
    border-bottom: 1px solid #dedede;
}

.lexpage .archive_single_list_exlp .list_post {
    margin-bottom: 40px;
}

.ttl_lp01 {
    text-align: center;
    font-size: 26px;
    font-weight: 700;
    position: relative;
    margin-bottom: 1.7em;
}

.ttl_lp01_s02 {
    padding-bottom: .85em;
}

.ttl_lp01_s02:before {
    content: "";
    width: 110px;
    height: 3px;
    background: #1c1c1c;
    position: absolute;
    bottom: 0;
    left: calc(50% - 55px);
}

.ttl_lp01 .sp_onl {
    display: none;
}

.ttl_lp01 strong {
    font-size: 140%;
}

.lpbox {
    padding: 55px 0;
}

.lpbox01 {
    background: #E9F3F5;
}

.lpbox02 {
    background: #FAF8EF;
}

.lpbox04 {
    padding-top: 10px;
}

ul.list-tab01 {
    padding: 0px;
    list-style: none;
    display: none;
    max-width: 800px;
    margin: 0 auto 30px;
    display: none;
    justify-content: space-between;
}

ul.list-tab01 li {
    width: calc((100% - 20px) / 3);
    background: #B7B7B7;
    color: #fff;
    display: inline-block;
    padding: 10px 0;
    cursor: pointer;
    font-size: 20px;
    font-weight: bold;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-decoration: none;
    -webkit-box-shadow: inset 0px -4px 0px 0px #7F7F7F;
    -moz-box-shadow: inset 0px -4px 0px 0px #7F7F7F;
    box-shadow: inset 0px -4px 0px 0px #7F7F7F;
    margin: 0 10px 0 0;
    box-sizing: border-box;
    text-align: center;
}

ul.list-tab01 li.current {
    background: #9FBC8D;
    -webkit-box-shadow: inset 0px -4px 0px 0px #386934;
    -moz-box-shadow: inset 0px -4px 0px 0px #386934;
    box-shadow: inset 0px -4px 0px 0px #386934;
}

ul.list-tab01 li:nth-child(3n+3) {
    margin-right: 0;
}

.list_bxex_02 {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 40px;
}




.list_bxex02_col {
    width: calc((100% -40px) / 3);
    margin-right: 20px;
    background: #fff;
    box-sizing: border-box;
    padding: 15px;
    border-radius: 5px;
    position: relative;
}

.list_bxex02_col:nth-child(3n+3) {
    margin-right: 0;
}

.list_bxex02_col:before {
    content: "";
    width: 0;
    height: 0;
    border-top: 20px solid #9FBC8D;
    border-right: 20px solid transparent;
    position: absolute;
    left: 3px;
    top: 3px;
}

.list_bxex02_ttl {
    font-size: 30px;
    font-weight: bold;
    padding-top: 20px;
    position: relative;
    margin-bottom: 35px;
    text-align: center;
}

.list_bxex02_ttl:before {
    content: "";
    background: #9FBC8D;
    width: 60px;
    height: 3px;
    position: absolute;
    left: 50%;
    margin-left: -30px;
    bottom: -10px;
}

.list_bxex02_col.list_bxex02_cl01:before {
    border-top: 10px solid #9FBC8D;
    border-right: 10px solid transparent;
}

.list_bxex02_cl01 .list_bxex02_ttl:before {
    background: #9FBC8D;
}

.list_bxex02_ttl.list_bxex02_ttl_01 {
    font-size: 20px;
    line-height: 24px;
}

.box_sub01 {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 20px;
}

.list_bxex02_btn {
    margin-bottom: 0;
}

.list_bxex02_btn a {
    background: url(../images/icon_btn001.png) right 8px center no-repeat #386934;
    background-size: 15px auto;
    color: #fff;
    display: inline-block;
    padding: 3px 35px 3px 20px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 700;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    text-decoration: none;
    margin: 0 auto;
    box-sizing: border-box;
    text-align: center;
    transition: all 0.2s;

}

.list_bxex02_btn a:hover {
    background-position: right 5px center;
    opacity: 0.8;
}

.list_bxex02_ttl_sub {
    font-size: 18px;
    color: #333333;
    text-align: center;
    font-weight: bold;
    margin-bottom: 0;

}

.list_bxex02_des_ttl {
    font-size: 16px;
    color: #333333;
    text-align: center;
    font-weight: bold;
    margin-bottom: 15px;

}

.list_bxex02_des {
    font-weight: 500;
    color: #333333;
    margin-bottom: 10px;
}

.list_bxex02_pd {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 25px;

}

.list_bxex_02 li {
    background: #F9F9F9;
    padding: 10px 1px 10px 1px;
    width: calc((100% - 21px) / 3);
    margin: 0 10px 10px 0;
    text-align: center;

}

.list_bxex_02 li:nth-child(3n+3) {
    margin-right: 0;
}

.list_bxex_02 li.list2r img {
    margin-bottom: 5px;
}

.list_bxex_02 li img {
    display: block;
    margin: 0 auto 8px;
}

.list_bxex_02 li span {
    font-size: 11px;
    line-height: 14px;
    display: block;
}

.under_post {
    font-size: 17px;
}



.center_img {
    max-width: 800px;
    margin: 0 auto 1.5em;
    text-align: center;
}

.inbl {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 40px;
}

.tag_cate {
    border: 1px solid #E5127C;
    color: #E5127C;
    font-size: 12px;
    font-weight: bold;
    margin-right: 8px;
    line-height: 20px;
    padding: 0 12px;
}

.post_date {
    font-size: 16px;
    font-weight: bold;
}

.img_wcap_ct {
    margin: 0 auto 40px;
	text-align: center;
}

.img_wcap_ct img {
	margin: 0 auto 20px;
  width: 100%;
}

.img_wcap_ct .catption_txt {
	
	text-align: left;
}


.box_center {
    max-width: 760px;
    margin: 0 auto 40px;
}

p:empty {
    display: none;
}

.note01 {
    margin-bottom: 30px;
}

.note01 {
    position: relative;
    padding-left: 20px;
    line-height: 1.6em;
    margin-bottom: 10px;
}

.note01:before {
    content: "※";
    z-index: 4;
    position: absolute;
    top: 0px;
    left: 0;
}

.note01.note_c {
    color: #ff9a00;
    font-weight: 600;
}

.note01.note_c:before {
    color: #ff9a00;
}

.box_ctwimg {
    clear: both;
    margin-bottom: 40px;
}

.box_ctwimg p:last-child {
    margin-bottom: 0;
}
.blog-content .img_r {
    max-width: 420px;
    float: right;
    margin: 0 0 20px 40px;

}

.blog-content .img_l {
    max-width: 420px;
    float: left;
    margin: 0 40px 20px 0;
}


.catption_txt {
    padding-top: 10px;
	display: block;
}

.box_lig01 {
    position: relative;
    padding: 40px;
    background: #F7F7F7;
    margin-bottom: 40px;
    margin-top: 20px;
}

.box_lig01 p:last-child {
    margin-bottom: 0;
}

.box_lig02 {
    position: relative;
    padding: 40px;
    background: #fff;
    margin-bottom: 40px;
    color: #d66a39;
    box-shadow: 0 3px 20px 0 rgba(0, 0, 0, 0.1);
    border-radius: 20px;
    margin-top: 20px;
    font-weight: 500;
}

.box_lig02 p:last-child {
    margin-bottom: 0;
}

.box_lig03 {
  position: relative;
  padding: 40px;
  background: url(../images/key-bg.jpg) no-repeat center center;
  background-size: cover;
  margin-bottom: 40px;
  margin-top: 20px;
  color: #fff;
}

.box_lig03 p:last-child {
  margin-bottom: 0;
}



.maint0 {
    margin-top: 0;
}



blockquote p,
blockquote li,
blockquote dt,
blockquote dd,
blockquote a {
    font-size: 16px;

}

blockquote {
    position: relative;
    padding: 25px 30px 25px 70px;
    box-sizing: border-box;

    background: #F7F7F7;
    margin-bottom: 40px;
    border-left: 2px solid #E5127C;
    box-shadow: 1px 2px 2px 0px #e0e0e0;
}

blockquote:before {
    position: absolute;
    top: 15px;
    left: 20px;
    z-index: 2;
    background: url(../images/icon_quote.png) no-repeat;
    background-size: 40px;
    width: 50px;
    height: 50px;
    content: "";
}


blockquote p {
    position: relative;
    padding: 0;
    margin: 10px 0;
    z-index: 3;
    line-height: 1.7;
}

blockquote cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}


.blog-content .imgBox {
	margin-bottom:40px;
}

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

    .blog-content .img_l {
        max-width: 300px;
        margin: 0 20px 15px 0;
    }

    .blog-content .img_r {
        max-width: 300px;
        margin: 0 0px 15px 20px;
    }
}


@media screen and (max-width: 750px) {
    .inbl {
        margin-bottom: 40px;
    }
    .box_lig01,
    .box_lig02,
    .box_lig03 {
        padding: 20px;
    }
    .under_post table th {
        font-size: 15px;
    }
}

@media screen and (max-width: 640px) {
    .blog-content .img_l,
    .blog-content .img_r {
        float: none;
        max-width: 100%;
        margin: 0 0px 20px 0;
    }
}

/* INTRO DR */
.avata-doc {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background: url(../images/top-gf-bg.jpg) no-repeat center center;
    background-size: cover;
    border-radius: 20px;
    -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0px 4px 12px;
            box-shadow: rgba(0, 0, 0, 0.2) 0px 4px 12px;
  }
  
  .avata-doc__im {
    width: 30%;
  }
  
  .avata-doc__im img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
  }
  
  .avata-doc__name {
    width: 70%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
  }
  
  .avata-doc__name h1 {
    font-size: 24px;
    color: #d66a39;
    font-weight: bold;
  }

  /* FAQ PAGE */
  .faq_box{ margin-top: 200px;}

  .faq_box__item {
    margin-bottom: 20px;
    border-radius: 20px;
    box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
  }
  
  .faq_box__body {
    display: none;
    padding: 20px 30px 40px;
    background-color: #fff;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    font-size: 14px;
    letter-spacing: .1em;
    line-height: 30px;
    text-align: justify;
  }
  
  .faq_box__title {
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: .1em;
    color: #615647;
    cursor: pointer;
    margin-bottom: 0;
    position: relative;
    font-family: var(--font-ki);
    font-weight: 500;
    display: flex;
    align-items: center;
    padding: 30px 40px 30px 30px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    transition: 400ms ease-in-out;
  }
  
  .faq_box__title.active {
    color: #fff;
    background-color: #ed9126;
  }

  .faq_box__title.active .gg-math-plus {
      transform: rotate(45deg);
  }

  .gg-math-plus,
  .gg-math-plus::after {
    display: block;
    box-sizing: border-box;
    background: currentColor;
    border-radius: 10px;
  }
  .gg-math-plus {
    margin-top: -2px;
    position: absolute;
    right: 30px;
    width: 16px;
    height: 2px;
    transition: all 0.15s cubic-bezier(.42, 0, .58, 1);
  }
 .gg-math-plus::after {
    content: "";
    position: absolute;
    width: 2px;
    height: 16px;
    top: -7px;
    left: 7px;
 }
  
  @media only screen and (max-width: 1024px) {
    .avata-doc__name h1 {
      font-size: 18px;
    }
  }

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

    .avata-doc {
      width: 100%;
      display: block;
      border-radius: 15px;
    }
    .avata-doc__im {
      width: 100%;
    }
    .avata-doc__im img {
      border-top-left-radius: 15px;
      border-top-right-radius: 15px;
      border-bottom-left-radius: unset;
    }
    .avata-doc__name {
      width: 100%;
      padding: 40px 0;
      border-top-right-radius: unset;
      border-bottom-left-radius: 15px;
      border-bottom-right-radius: 15px;
    }
    .avata-doc__name h1 { font-size: 16px;}

    .faq_box{ margin-top: 50px;}

    .faq_box__title { font-size: 16px; line-height: 28px; padding: 20px 50px 20px 20px;}

    .faq_box__body{ padding: 10px 20px 20px; font-size: 12px; line-height: 26px;}

  }

  /* CUSTOM PAGE */

.cuspage-contents {
  padding: 103px 0 0;
}

.cuspage-point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.cuspage-point .block-im {
  width: 51%;
}

.cuspage-point .block-im img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.cuspage-point .block-ct {
  width: 49%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.cuspage-point .block-ct__tit {
  position: relative;
  margin-top: 38px;
}

.cuspage-point .block-ct__tit p {
  font-family: var(--font-shb1);
  font-weight: 600;
}

.cuspage-point .block-ct__tit .num {
  text-indent: -.05em;
  position: absolute;
  top: -40px;
  left: 0;
  font-weight: bold;
  font-size: 120px;
  letter-spacing: 0;
  line-height: .7;
  color: #f6f6f6;
}

.cuspage-point .block-ct__tit .te {
  font-size: 18px;
  color: var(--col-black);
  letter-spacing: .1em;
  line-height: 32px;
  position: relative;
  padding-left: 27px;
  padding-bottom: 27px;
  white-space: nowrap;
}

.cuspage-point .block-ct__tit .te::before {
  content: '';
  display: block;
  width: 60px;
  height: 3px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: -webkit-gradient(linear, left top, right top, color-stop(50%, #e19a3e), color-stop(50%, #d66a39));
  background: -webkit-linear-gradient(left, #e19a3e 50%, #d66a39 50%);
  background: linear-gradient(to right, #e19a3e 50%, #d66a39 50%);
}

.cuspage-point .block-ct__sub {
  margin-top: 41px;
}

.cuspage-point .block-ct__sub p {
  color: #d66a39;
  font-size: 24px;
  line-height: 42px;
  letter-spacing: .1em;
  font-family: var(--font-shb1);
  font-weight: 600;
  white-space: nowrap;
}

.cuspage-point .block-ct__te {
  margin-top: 20px;
}

.cuspage-point .block-ct__te p {
  font-size: 15px;
  line-height: 32px;
  letter-spacing: .1em;
  color: var(--col-black);
  text-align: justify;
}

.cuspage-point.-imLeft {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

.cuspage-point.-imLeft .block-ct {
  padding: 0 160px 0 80px;
}

.cuspage-point.-imRight {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.cuspage-point.-imRight .block-ct {
  padding: 0 80px 0 160px;
}

.cuspage-point:not(:first-child) {
  margin-top: 100px;
}

@media only screen and (max-width: 1366px) {
  .cuspage-point.-imLeft .block-ct {
    padding: 0 80px;
  }
  .cuspage-point.-imRight .block-ct {
    padding: 0 80px;
  }
}

@media only screen and (max-width: 1280px) {
  .cuspage-point .block-ct__tit {
    margin-top: 0px;
  }
  .cuspage-point .block-ct__tit .num {
    top: -40px;
  }
  .cuspage-point .block-ct__tit .te {
    font-size: 18px;
    line-height: 32px;
    white-space: normal;
  }
  .cuspage-point .block-ct__sub {
    margin-top: 30px;
  }
  .cuspage-point .block-ct__sub br {
    display: none;
  }
  .cuspage-point .block-ct__sub p {
    font-size: 22px;
    line-height: 32px;
    white-space: normal;
  }
  .cuspage-point .block-ct__te {
    margin-top: 20px;
  }
  .cuspage-point .block-ct__te p {
    font-size: 14px;
    line-height: 28px;
  }
  .cuspage-point.-imLeft .block-ct {
    padding: 0 0 0 30px;
  }
  .cuspage-point.-imRight .block-ct {
    padding: 0 30px 0 0;
  }
}

@media only screen and (max-width: 1024px) {
  .cuspage-point .block-ct__tit .num {
    top: -30px;
    font-size: 100px;
  }
  .cuspage-point .block-ct__tit .te {
    line-height: 28px;
    padding-bottom: 20px;
  }
  .cuspage-point .block-ct__sub {
    margin-top: 20px;
  }
  .cuspage-point .block-ct__sub p {
    font-size: 20px;
    line-height: 28px;
  }
  .cuspage-point .block-ct__te p {
    font-size: 13px;
    line-height: 26px;
  }
}

@media only screen and (max-width: 900px) {
  .cuspage-point {
    display: block;
  }
  .cuspage-point .block-im {
    width: 100%;
  }
  .cuspage-point .block-ct {
    width: 100%;
    margin-top: 50px;
  }
}