@charset "UTF-8";
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, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}
strong { font-weight:bold;}
ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0; margin:0; padding:0; vertical-align:bottom;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section ,picture {display: block;}
img {padding:0; margin:0; vertical-align:bottom;max-width: 100%; height: auto; -webkit-backface-visibility: hidden;}
img[src$=".svg"] {width: 100%;}
picture {display: block;}
label {cursor:pointer;}
a { text-decoration:none;}
a:hover {opacity: .7;}
html {overflow: auto;}

/*
font-family: 'Noto Sans JP', sans-serif;
font-family: 'Noto Serif JP', serif;
*/

#hoge { position: fixed;width: 100%;height: 100%;z-index: -1;}
body{color:#000; background-color: #FFF; font-size: 16px; font-family:'Noto Sans JP', sans-serif,"游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; overflow: hidden; font-weight: 400;-webkit-text-size-adjust: 100%;}

body.home {background:#0D1327 url("../images/top_bg.png") no-repeat center 100px;}

header.sp {display: none;}

.br-sp {display: none;}
.first header.pc {height: 180px; width: 100%; border-bottom: 4px solid #EA5550;}
.first header.pc section {width: 1000px; margin: 0px auto;}
.first header.pc section h1 {padding: 10px 0px 10px 10px; height: 160px; float: left;}
.first header.pc section h1 img {height: 100%;}
.first header.pc section h2 {float: left; height: 160px; padding: 10px 0px; margin-left: 10px;}
.first header.pc section h2 img {height: 100%;}
.first header.pc section > div {float: right; padding-top: 25px;}
.first header.pc section > div dl {display: inline-block;}
.first header.pc section > div dl + dl {margin-left: 40px;}
.first header.pc section > div dl dt span {font-size: 14px; padding: 3px 50px; background: rgb(178,178,178);background: linear-gradient(0deg, rgba(178,178,178,1) 0%, rgba(255,255,255,1) 100%); border: 1px solid #CCC; font-weight: 500;}
.first header.pc section > div dl dd {font-weight: 300;}
.first header.pc section > div dl dd p {font-size: 12px; color: #FFF; margin: 10px 0px;}
.first header.pc section > div dl dd ul li {font-size: 18px; color: #FFF;}
.first header.pc section:after {content: "";display: block;clear: both;}

.second header.pc {height: 180px; width: 100%; border-bottom: 4px solid #EA5550;}
.second header.pc section {width: 1000px; margin: 0px auto;}
.second header.pc section h1 {padding: 10px 0px 10px 10px; height: 160px; float: left;}
.second header.pc section h1 img {height: 100%;}
.second header.pc section .header_cont {float: left; width: 796px; margin-left: 15px; padding-top: 10px;}
.second header.pc section .header_cont > p {font-size: 14px; margin-bottom: 18px;}
.second header.pc section .header_cont .header_navi {float: left; width: 464px;}
.second header.pc section .header_cont .header_navi nav {margin-top: 15px;}
.second header.pc section .header_cont .header_navi nav ul li {width: 32.8%; margin-left:0.8%; float: left; margin-bottom: 0.8%;}
.second header.pc section .header_cont .header_navi nav ul li:nth-child(3n+1) {margin-left: 0%;}
.second header.pc section .header_cont .header_navi nav ul li a {display: block;background: rgb(178,178,178);background: linear-gradient(0deg, rgba(178,178,178,1) 0%, rgba(255,255,255,1) 100%); border: 1px solid #CCC; font-weight: 500; color: #000; text-align: center; padding: 3px 0px; box-sizing: border-box;}
.second header.pc section .header_cont .header_navi nav ul li a:hover {background: rgb(234,85,80);background: linear-gradient(0deg, rgba(234,85,80,1) 0%, rgba(246,190,200,1) 100%);color: #FFF; opacity: 1;}
.second header section .header_cont .header_navi nav ul li.active a {background: rgb(234,85,80);background: linear-gradient(0deg, rgba(234,85,80,1) 0%, rgba(246,190,200,1) 100%);color: #FFF;}

.second header.pc section .header_cont .header_tel {float: left; width: 312px; margin-left: 20px;}
.second header.pc section .header_cont .header_tel ul:first-child li {margin-bottom: 10px;}
.second header.pc section .header_cont .header_tel ul + ul {font-size: 0px;}
.second header.pc section .header_cont .header_tel ul + ul li {display:inline-block;width: 49%;}
.second header.pc section .header_cont .header_tel ul + ul li + li {margin-left: 2%;}
.second header.pc section .header_cont .header_tel ul + ul li a {display: block; text-align: left; border: 1px solid #CCC; font-size: 14px; font-weight: 500; color: #000; padding: 3px 0px 3px 35px; position: relative; box-sizing: border-box;}
.second header.pc section .header_cont .header_tel ul + ul li a:before {content: ""; width: 22px; height: 14px; background: url("../images/mail-mark.png") no-repeat; background-size: cover;position: absolute; left: 5px; top: 7px;}
.second header.pc section:after {content: "";display: block;clear: both;}

article.top > section.top_cont {padding: 40px 0px; width: 1000px; margin: 0px auto;}
article.top > section.top_cont > h2 {letter-spacing: 2px; text-align: center; font-size: 40px; font-family: 'Noto Serif JP', serif; font-weight: 700; color: #FFF;text-shadow: 0px 0px 5px rgba(35,24,21,1);}
article.top > section.top_cont > h3 {letter-spacing: 2px; text-align: center; font-size: 24px;font-weight: 500; color: #FFF;text-shadow: 0px 0px 5px rgba(35,24,21,1);line-height: 200%; margin-top: 30px;}
article.top > section.top_cont > h4 {font-size: 20px; text-align: center; background-color: #FFF; border-radius: 10px; width: 100%;padding: 10px 0px; line-height: 180%; margin-top: 40px; font-weight: 500;}
article.top > section.top_cont > figure {margin-top: 35px;}
article.top > section.top_cont > div {display: flex;justify-content: space-between; margin-top: 40px;}
article.top > section.top_cont > div figure {width:22.5%; }
article.top > section.top_cont > div figure picture {display: block; border-bottom: 4px solid #EA5550; background-color: #FFF; overflow: hidden;}
article.top > section.top_cont > div figure picture img {transition-duration: 0.3s;}
article.top > section.top_cont > div figure picture img:hover {transform: scale(1.2);transition-duration: 0.3s;}
article.top > section.top_cont > div figure figcaption h5 {text-align: center; margin: 15px 0px 20px;}
article.top > section.top_cont > div figure figcaption h5 a {color: #FFF; font-size: 24px; position: relative; padding-right: 32px;}
article.top > section.top_cont > div figure figcaption h5 a:after {content: ""; width: 16px; height: 16px; background: url("../images/link_icon.png") no-repeat; background-size: cover; position: absolute; right: 0px; top: 12px;}
article.top > section.top_cont > div figure figcaption h5 a:hover {opacity: 1;}
article.top > section.top_cont > div figure figcaption h5 a:hover:after {background: url("../images/link_icon_hover.png") no-repeat;background-size: cover;}
article.top > section.top_cont > div figure figcaption p {font-size: 14px; color: #FFF;}

article.top > div.about_nav {padding: 40px 0px 0px; width: 960px; margin: 0px auto;}
article.top > div.about_nav nav ul li {width: 16%; margin-left:0.8%; float: left;}
article.top > div.about_nav nav ul li:first-child {margin-left: 0%;}
article.top > div.about_nav nav ul li a {display: block;background: rgb(178,178,178);background: linear-gradient(0deg, rgba(178,178,178,1) 0%, rgba(255,255,255,1) 100%); border: 1px solid #CCC; font-weight: 500; color: #000; text-align: center; padding: 3px 0px; box-sizing: border-box;}
article.top > div.about_nav nav ul li a:hover {background: rgb(234,85,80);background: linear-gradient(0deg, rgba(234,85,80,1) 0%, rgba(246,190,200,1) 100%);color: #FFF; opacity: 1;}
article.top > div.about_nav nav ul li.active a {background: rgb(234,85,80);background: linear-gradient(0deg, rgba(234,85,80,1) 0%, rgba(246,190,200,1) 100%);color: #FFF;}
article.top > div.about_nav nav ul:after {content: "";display: block;clear: both;}

article.top > section.about_cont {padding: 40px 0px 40px; width: 960px; margin: 0px auto;}
article.top > section.about_cont h2 {color: #FFF; font-size: 50px; font-weight: 500;font-family: 'Noto Serif JP', serif; position: relative; color: #EA5550;}
article.top > section.about_cont h2 span {display:block;vertical-align: middle;width: 50px; height: 50px; background: url("../images/overseas/h2_icon.png") no-repeat; background-size: cover; position: absolute; left: 0; top: 13px;}
article.top > section.about_cont h2 strong {padding-left: 53px; display: block; text-shadow: 0px 0px 5px rgba(35,24,21,1);}
article.top > section.about_cont h2 + p {text-shadow: 0px 0px 5px rgba(0,0,0,1); color: #FFF; line-height: 180%; margin: 10px 0px 20px;}

section.about_cont .about_main {margin-top: 20px;}
section.about_cont .about_main h3 {font-size: 30px; font-weight: 700; color: #EA5550; border-left: 2px solid #EA5550; padding-left: 10px; line-height: 100%;}
section.about_cont .about_main > div {margin-top: 20px;}
section.about_cont .about_main > div dl {color: #FFF;}
section.about_cont .about_main > div > dl {border-top: 1px solid #9FA0A0; padding-top: 5px; display: flex;}
section.about_cont .about_main > div > dl > dt {padding: 5px 10px 5px; width: 10%; font-weight: 700; box-sizing: border-box;}
section.about_cont .about_main > div > dl > dd {margin-bottom: 5px; border-left: 1px solid #9FA0A0; font-weight: 400; padding: 5px 10px;text-shadow: 0px 0px 5px rgba(0,0,0,1); width: calc(100% - 10%); box-sizing: border-box;}
section.about_cont .about_main > div > dl > dd.small {font-size: 14px;padding: 6px 10px;}

section.about_cont .about_main > div > dl > dd dl dt {float: left; width: 5em; display: flex; justify-content: space-between;}
section.about_cont .about_main > div > dl > dd dl dt span {}
section.about_cont .about_main > div > dl > dd dl dd {padding-left: 6em;}
section.about_cont .about_main > div > dl > dd dl:after {content: "";display: block;clear: both;}
section.about_cont .about_main > div > dl > dd dl + dl {margin-top: 10px;}
section.about_cont .about_main > div > dl:nth-child(2) > dt {vertical-align: top;}
section.about_cont .about_main > div > dl:last-child {border-bottom: 1px solid #9FA0A0;}

section.about_cont .greeting {margin-top: 30px; display: flex; justify-content: space-between;}
section.about_cont .greeting figure {width: 220px;}
section.about_cont .greeting figure figcaption {font-size: 14px; color: #FFF; text-align: left;text-shadow: 0px 0px 5px rgba(35,24,21,1); margin-top: 5px;}
section.about_cont .greeting > div {width: calc(100% - 236px);}
section.about_cont .greeting > div h3 {font-size: 24px; color: #ea5550; font-weight: 700;}
section.about_cont .greeting > div p {color: #FFF; line-height: 180%; text-align: left;text-shadow: 0px 0px 5px rgba(35,24,21,1); margin-top: 15px;}

section.about_cont > div.about_link {display: flex;justify-content: space-between; margin-top: 40px;}
section.about_cont > div.about_link figure {width:22.5%; }
section.about_cont > div.about_link figure picture {display: block; border-bottom: 4px solid #EA5550; background-color: #FFF; overflow: hidden;}
section.about_cont > div.about_link figure picture img {transition-duration: 0.3s;}
section.about_cont > div.about_link figure picture img:hover {transform: scale(1.2);transition-duration: 0.3s;}
section.about_cont > div.about_link figure figcaption h5 {text-align: center; margin: 15px 0px 20px;}
section.about_cont > div.about_link figure figcaption h5 a {color: #FFF; font-size: 24px; position: relative; padding-right: 32px;}
section.about_cont > div.about_link figure figcaption h5 a:after {content: ""; width: 16px; height: 16px; background: url("../images/link_icon.png") no-repeat; background-size: cover; position: absolute; right: 0px; top: 12px;}
section.about_cont > div.about_link figure figcaption h5 a:hover {opacity: 1;}
section.about_cont > div.about_link figure figcaption h5 a:hover:after {background: url("../images/link_icon_hover.png") no-repeat;background-size: cover;}
section.about_cont > div.about_link figure figcaption p {font-size: 14px; color: #FFF;}


footer .footer_contact { width: 100%; background-color: #EFEFEF;}
footer .footer_contact > div {width: 1000px; margin: 0px auto;}
footer .footer_contact > div > div {width: 50%;float: left;}
footer .footer_contact > div > div:first-child {border-right: 1px solid #fff;}
footer .footer_contact > div > div:first-child {padding: 20px 44px 20px 144px; box-sizing: border-box;}
footer .footer_contact > div > div:nth-child(2) {padding: 20px 144px 20px 44px; box-sizing: border-box;}
footer .footer_contact > div > div h6 {font-family: 'Noto Serif JP', serif; font-weight: 300; text-align: center;}
footer .footer_contact > div > div:first-child ul li { margin-top: 10px;}
footer .footer_contact > div > div:first-child p {font-size: 12px;margin-top: 10px;}
footer .footer_contact > div > div:nth-child(2) ul {background-color: #FFF; border-radius: 10px; text-align: center; padding: 35px 20px 35px;font-size: 0; margin-top: 10px;}
footer .footer_contact > div > div:nth-child(2) ul li {display: inline-block;width: 49%;}
footer .footer_contact > div > div:nth-child(2) ul li + li {margin-left: 2%;}
footer .footer_contact > div > div:nth-child(2) ul li a {display: block; text-align: left; border: 1px solid #CCC; font-size: 14px; font-weight: 500; color: #000; padding: 3px 0px 3px 35px; position: relative;}
footer .footer_contact > div > div:nth-child(2) ul li a:before {content: ""; width: 22px; height: 14px; background: url("../images/mail-mark.png") no-repeat; background-size: cover;position: absolute; left: 5px; top: 7px;}
footer .footer_contact > div:after {content: "";display: block;clear: both;}
footer .footer_under {width: 100%; background-color: #9FA0A0;}
footer .footer_under > div {width: 1000px; margin: 0px auto; padding: 20px; box-sizing: border-box; position: relative;}
footer .footer_under > div > h5 a {color: #FFF; font-weight: 500;}
footer .footer_under > div > ul li {display: inline-block;}
footer .footer_under > div > ul li a {font-size: 12px; margin-right: 20px; color: #FFF;}
footer .footer_under > div > h6 {font-size: 12px; color: #FFF; text-align: center; margin-top: 20px;}
footer .footer_under > div > p.pagetop {position: absolute; right: 20px; top: -25px;}

footer .footer_banner {display: flex; justify-content: space-between; margin-top: 20px;}
footer .footer_banner figure {width: 18%;}
footer .footer_banner figure a {display: block;}
footer .footer_banner figure picture {background-color: #000; display: block;}
footer .footer_banner figure figcaption {margin-top: 3px;}
footer .footer_banner figure figcaption p {text-align: center;}
footer .footer_banner figure figcaption p a {color: #FFF; font-size: 12px; position: relative; display: inline-block; padding-right: 16px;}
footer .footer_banner figure figcaption p a:after {content: ""; width: 12px; height: 12px; background: url("../images/link_icon.png") no-repeat; background-size: cover; position: absolute; right: 0px; top: 4px;}
footer .footer_banner figure figcaption p a:hover {opacity: 1;}
footer .footer_banner figure figcaption p a:hover:after {background: url("../images/link_icon_hover.png") no-repeat;background-size: cover;}
footer .footer_banner figure picture:hover + figcaption p a:after {background: url("../images/link_icon_hover.png") no-repeat;background-size: cover;}

.overseas_subnavi {width: 1000px; margin: 0px auto;}
.overseas_subnavi nav {margin: 10px 0px;}
.overseas_subnavi nav > ul {width: 100%; display: flex;}
.overseas_subnavi nav > ul > li {width: 25%;position: relative;}
.overseas_subnavi nav > ul > li > a {display: block; width: 100%;height: 60px; display: flex; justify-content: center; align-items: center; color: #FFF; background-color: #EA5550; box-sizing: content-box;text-align: center; border: 1px solid #DCDDDD;font-weight: 500; cursor: pointer;}
.overseas_subnavi nav > ul > li:hover > a {opacity: 1; background-color:#F6BEC8; color: #000; border: 1px solid #F6BEC8;}
.overseas_subnavi nav > ul > li > ul {width:100%; display: none;position: absolute; z-index: 1;}
.overseas_subnavi nav > ul > li > ul li {width: 100%;}
.overseas_subnavi nav > ul > li > ul li a {font-size: 14px; width: 100%; height: auto; box-sizing: border-box; padding: 7px 20px; display: block;background-color:#F6BEC8;color: #000; font-weight: 500; border-top: 1px solid #000;position: relative;}
.overseas_subnavi nav > ul > li > ul li a:before {position: absolute; content: '';width: 0;height: 0;border: solid 6px transparent;border-left: solid 8px #000;top:11px;left: 8px;}
.overseas_subnavi nav > ul > li > ul li a:hover {opacity: 1; background-color: #F8CCD4;}
.overseas_subnavi nav > ul > li > ul li:first-child a {border-top: none;}

.slider {width: 1000px; margin: 0px auto 30px;}

.pankuz {width: 960px; margin: 15px auto;}
.pankuz li {font-size: 14px; margin-right: 5px; display: inline-block;}
.pankuz li a {font-size: 14px; color: #000;}
.pankuz li:after {content: ">"; padding-left: 7px;}
.pankuz li:last-child:after {content: "";}

@media only screen and (max-width:834px){
.second header.pc {display: none;}
.first header.pc {display: none;}
header.sp {display: block; width: 100%; border-bottom: 2px solid #EA5550; height: 60px; box-sizing: border-box;}
header.sp h1 {width: 80%; padding: 10px 0px 0px 10px; box-sizing: border-box;}
header.sp h1 a img {-webkit-backface-visibility: hidden;image-rendering: -webkit-optimize-contrast;}

.no-scroll {height: 100vh;}

.overlay,.hamburger_icon,.hamburger_icon:after,.hamburger_icon:before{-moz-transition-duration:.4s;-o-transition-duration:.4s;-webkit-transition-duration:.4s}
.hamburger{ display:block;width:40px;height:40px;top:7px;right:5px;z-index:10000;padding:8px 8px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-ms-touch-action:manipulation;touch-action:manipulation; cursor:pointer; position:absolute; background-color: none;}
.hamburger_icon{position:relative;margin-top:12px;margin-bottom:0px;z-index:10000;}
.hamburger_icon,.hamburger_icon:after,.hamburger_icon:before{display:block;width:24px;height:2px;background-color:#000;-moz-transition-property:background-color,-moz-transform;-o-transition-property:background-color,-o-transform;-webkit-transition-property:background-color,-webkit-transform;transition-property:background-color,transform;transition-duration:.4s}
.first .hamburger_icon, .first .hamburger_icon:after,.first .hamburger_icon:before {background-color:#FFF;}
.hamburger_icon:after,.hamburger_icon:before{position:absolute;content:"";}
.hamburger_icon:before{top:-8px}
.hamburger_icon:after{top:8px}
.hamburger.active { z-index:10000;}
.hamburger.active .hamburger_icon{background-color:transparent}
.hamburger.active .hamburger_icon:after,.hamburger.active .hamburger_icon:before{background-color:#000;}
.hamburger.active .hamburger_icon:before{-moz-transform:translateY(8px)rotate(45deg);-ms-transform:translateY(8px)rotate(45deg);-webkit-transform:translateY(8px)rotate(45deg);transform:translateY(8px)rotate(45deg); background-color: #FFF;}
.hamburger.active .hamburger_icon:after{-moz-transform:translateY(-8px)rotate(-45deg);-ms-transform:translateY(-8px)rotate(-45deg);-webkit-transform:translateY(-8px)rotate(-45deg);transform:translateY(-8px)rotate(-45deg);background-color: #FFF;}
.overlay{top:0;left:0;position:fixed;display:none;width:100%;height:100%;min-height:100vh;background:rgba(234,85,80,.9);-moz-transform:scale(1.4);-ms-transform:scale(1.4);-webkit-transform:scale(1.4);transform:scale(1.4);-moz-transition-property:-moz-transform;-o-transition-property:-o-transform;-webkit-transition-property:-webkit-transform;transition-property:transform;transition-duration:.4s;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch; z-index:10000;}
.overlay_wrapper {width:100%;height:auto; margin:0px; padding:60px 0px; box-sizing:border-box; background-size: cover;}
.overlay.active {-moz-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);}

.overseas_subnavi {display: none;}

.slider {width: 100%; margin: 0px auto 30px;}

.pankuz {width: 96%; margin: 15px auto;}
.pankuz li {font-size: 12px; margin-right: 5px; display: inline-block;}
.pankuz li a {font-size: 12px; color: #000;}

.overlay_wrapper nav ul li a {color: #FFF; font-size: 18px; display: block; padding: 10px;}
.overlay_wrapper nav ul > li > ul li span {color: #FFF; font-size: 18px; display: block; padding: 10px; position: relative; cursor: pointer;}
.overlay_wrapper nav ul > li > ul li span:hover {opacity: .8;}
.overlay_wrapper nav ul > li {border-bottom: 1px solid #FFF;}
.overlay_wrapper nav ul > li > ul > li > ul {display: none;}
.overlay_wrapper nav ul > li > ul > li {border-bottom: 1px dotted #FFF;}
.overlay_wrapper nav ul > li > ul > li a {padding-left: 1em}
.overlay_wrapper nav ul > li > ul > li span {padding-left: 1em;}
.overlay_wrapper nav ul > li > ul > li:first-child {border-top: 1px dotted #FFF;}
.overlay_wrapper nav ul > li > ul > li:last-child {border-bottom: none;}

.overlay_wrapper nav ul > li > ul li span::before,
.overlay_wrapper nav ul > li > ul li span::after {content: '';display: block;width: 15px;height: 2px;border-radius: 5px;background: #FFF;position: absolute;right: 10px;top: 50%;transform: translateY(-50%);}
.overlay_wrapper nav ul > li > ul li span::after {background: #FFF;transform: translateY(-50%) rotate(90deg);transition: 0.5s;}

.overlay_wrapper nav ul > li > ul > li > ul > li a {padding-left: 2em; color: #000;}
.overlay_wrapper nav ul > li > ul > li > ul {background-color:#F6BEC8; }
.overlay_wrapper nav ul > li > ul li span.active::after {transform: rotate(0);transition: 0.5s;}

footer .footer_contact > div {width:80%; margin: 0px auto;}
footer .footer_contact > div > div {width: 100%;float: none; text-align: center;}
footer .footer_contact > div > div:first-child {border-right: none}
footer .footer_contact > div > div:first-child {padding: 20px 2% 20px 2%; box-sizing: border-box;}
footer .footer_contact > div > div:nth-child(2) {display: none;}

footer .footer_under > div {width: 100%; margin: 0px auto; padding: 20px; box-sizing: border-box; position: relative;}
footer .footer_under > div > h5 {display: none;}
footer .footer_under > div > ul {display: none;}
footer .footer_under > div > h6 {text-align: center; margin-top: 0px;}

footer .footer_banner {display: none;}

footer .footer_under > div > p.pagetop {position: absolute; right: 10px; top: -195px;}

article.top > div.about_nav {display: none;}
article.top > section.about_cont {padding: 40px 0px 40px; width: 96%; margin: 0px auto;}

article.top > section.about_cont h2 {color: #EA545D; font-size: 28px; font-weight: 500;font-family: 'Noto Serif JP', serif; position: relative;}
article.top > section.about_cont h2 span {display:block;vertical-align: middle;width: 20px; height: 20px; background: url("../images/overseas/h2_icon.png") no-repeat; background-size: cover; position: absolute; left: 0; top: 13px;}
article.top > section.about_cont h2 strong {padding-left: 23px; display: block;}
article.top > section.about_cont h2 + p {text-shadow: 0px 0px 5px rgba(0,0,0,1); color: #FFF; line-height: 180%; margin: 10px 0px 20px;}

section.about_cont .about_main h3 {font-size: 24px; font-weight: 700; color: #EA5550; border-left: 2px solid #EA5550; padding-left: 10px; line-height: 100%;}
section.about_cont .about_main > div > dl {border-top: 1px solid #9FA0A0; padding-top: 5px; display: flex;}
section.about_cont .about_main > div > dl > dt {display:block;padding: 5px 10px 5px; width: 20%; font-weight: 700; box-sizing: border-box;text-shadow: 0px 0px 5px rgba(0,0,0,1);}
section.about_cont .about_main > div > dl > dd {display:block; margin-bottom: 5px; border-left: 1px solid #9FA0A0; font-weight: 400; padding: 5px 10px;text-shadow: 0px 0px 5px rgba(0,0,0,1); width: 80%; box-sizing: border-box;}
section.about_cont .about_main > div > dl > dd dl dt {float:none; width: auto; display: block; justify-content: space-between;}
section.about_cont .about_main > div > dl > dd dl dt span {}
section.about_cont .about_main > div > dl > dd dl dd {padding-left: 0em; margin-top: 5px;}
section.about_cont .about_main > div > dl > dd dl:after {content: "";display: block;clear: both;}
section.about_cont .about_main > div > dl > dd dl + dl {margin-top: 10px;}
section.about_cont .about_main > div > dl:nth-child(2) > dt {vertical-align: top;}
section.about_cont .about_main > div > dl:last-child {border-bottom: 1px solid #9FA0A0;}

section.about_cont .greeting > div p { text-align: left; color: #FFF; line-height: 180%;}

article.top > section.top_cont {padding: 40px 0px; width: 96%; margin: 0px auto;}
article.top > section.top_cont > div {display: flex;justify-content: space-between; flex-wrap: wrap; margin-top: 5px;}
article.top > section.top_cont > div figure {width:48%; margin-bottom: 20px; }

section.about_cont > div.about_link {display: flex;justify-content: space-between; flex-wrap: wrap; margin-top: 40px;}
section.about_cont > div.about_link figure {width:48%; margin-bottom: 20px; }

}
@media only screen and (max-width:640px){
header.sp h1 {width: 80%; padding: 15px 0px 0px 10px; box-sizing: border-box;}
}

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

section.about_cont .about_main > div > dl > dt {display:block;padding: 5px 10px 5px; width: 30%; font-weight: 700; box-sizing: border-box;text-shadow: 0px 0px 5px rgba(0,0,0,1);font-size: 14px;}
section.about_cont .about_main > div > dl > dd {display:block; margin-bottom: 5px; border-left: 1px solid #9FA0A0; font-weight: 400; padding: 5px 10px;text-shadow: 0px 0px 5px rgba(0,0,0,1); width: 70%; box-sizing: border-box;font-size: 14px;}

article.top > section.top_cont > h2 {letter-spacing: 2px; text-align: center; font-size: 35px; font-family: 'Noto Serif JP', serif; font-weight: 700; color: #FFF;text-shadow: 0px 0px 5px rgba(0,0,0,1);}
article.top > section.top_cont > h3 {letter-spacing: 2px; text-align: center; font-size: 18px;font-weight: 500; color: #FFF;text-shadow: 0px 0px 5px rgba(0,0,0,1);line-height: 200%; margin-top: 30px;}
article.top > section.top_cont > h4 {font-size: 14px; text-align: center; background-color: #FFF; border-radius: 10px; width: 100%;padding: 10px 0px; line-height: 180%; margin-top: 40px; font-weight: 500;}

.br-sp {display: block;}

article.top > section.top_cont > div figure figcaption h5 a {color: #FFF; font-size:20px; position: relative; padding-right: 32px;text-shadow: 0px 0px 5px rgba(0,0,0,1);}
article.top > section.top_cont > div figure figcaption h5 a:after {content: ""; width: 16px; height: 16px; background: url("../images/link_icon.png") no-repeat; background-size: cover; position: absolute; right: 0px; top: 8px;}

section.about_cont .greeting {margin-top: 30px; display: flex; flex-direction: column; justify-content: space-between;}
section.about_cont .greeting > div {width: 100%; margin-top: 40px;}
section.about_cont .greeting figure {width: 220px; margin: 0px auto;}

section.about_cont > div.about_link figure figcaption h5 a {color: #FFF; font-size:20px; position: relative; padding-right: 32px;text-shadow: 0px 0px 5px rgba(0,0,0,1);}
section.about_cont > div.about_link figure figcaption h5 a:after {content: ""; width: 16px; height: 16px; background: url("../images/link_icon.png") no-repeat; background-size: cover; position: absolute; right: 0px; top: 8px;}

}

@media only screen and (max-width:414px){
article.top > section.top_cont > h2 {letter-spacing: 2px; text-align: center; font-size: 30px; font-family: 'Noto Serif JP', serif; font-weight: 700; color: #FFF;text-shadow: 0px 0px 5px rgba(0,0,0,1);}
article.top > section.top_cont > h3 {letter-spacing: 2px; text-align: center; font-size: 16px;font-weight: 500; color: #FFF;text-shadow: 0px 0px 5px rgba(0,0,0,1);line-height: 200%; margin-top: 30px;}
article.top > section.top_cont > h4 {font-size: 12px; text-align: center; background-color: #FFF; border-radius: 10px; width: 100%;padding: 10px 0px; line-height: 180%; margin-top: 40px; font-weight: 500;}
}
@media only screen and (max-width:375px){
article.top > section.top_cont > h3 br {display: none;}
article.top > section.top_cont > h4 {font-size: 14px; padding: 10px; box-sizing: border-box; text-align: left;}
article.top > section.top_cont > h4 br {display: none;}
}
@media only screen and (max-width:320px){
article.top > section.top_cont > h2 {font-size: 28px;}
article.top > section.top_cont > h2 br {display: none;}

article.top > section.top_cont > div {display: block;justify-content: space-between; margin-top: 40px;}
article.top > section.top_cont > div figure {width:100%; }

section.about_cont > div.about_link {display: block;justify-content: space-between; margin-top: 40px;}
section.about_cont > div.about_link figure {width:100%; }

}
