@charset "UTF-8";
/* --------------------------------------------------------------------------- ★共通
--------------------------------------------------------------------------- */
html { font-size: 62.5%; }

body { position: relative; -webkit-box-sizing: border-box; box-sizing: border-box; max-width: 100%; font-size: MIN(3.4vw, 15px); line-height: 1.8; font-weight: normal; }

object { pointer-events: none; }

.sp { display: block !important; }

.pc { display: none !important; }

a { text-decoration: none; -webkit-transition: 0.3s; transition: 0.3s; }

/* =======================================
	★ページャー
========================================== */
.pager { width: auto; margin: 0 auto; padding-bottom: 100px; }

/* =========================================================
	ヘッダー
========================================================= */
#header { padding: 0 0 0 3vw; }
#header #nav-btn { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; z-index: 9999; height: 100%; aspect-ratio: 1 / 1; background: #fff; }
#header #nav-btn > div { position: relative; width: 12vw; height: 12vw; }
#header #nav-btn span { position: absolute; left: 50%; width: 60%; height: 2px; background: #429DF8; border-radius: 4px; -webkit-transition: all .3s ease; transition: all .3s ease; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
#header #nav-btn span:nth-child(1) { top: 30%; }
#header #nav-btn span:nth-child(2) { top: 50%; }
#header #nav-btn span:nth-child(3) { top: 70%; }
#header #nav-btn.active span:nth-child(1) { top: 50%; -webkit-transform: translateX(-50%) rotate(45deg); transform: translateX(-50%) rotate(45deg); }
#header #nav-btn.active span:nth-child(2) { opacity: 0; -webkit-transform: translateX(-50%) scaleX(0); transform: translateX(-50%) scaleX(0); }
#header #nav-btn.active span:nth-child(3) { top: 50%; -webkit-transform: translateX(-50%) rotate(-45deg); transform: translateX(-50%) rotate(-45deg); }
#header ul.head-nav { position: fixed; top: 12vw; right: -200%; z-index: 9999; display: block; width: 100%; height: calc(100svh - 10vw); margin: 0; padding: 5vw 0; overflow-y: scroll; -webkit-transition: all .8s; transition: all .8s; background: #fff; border-top: 1px solid #429DF8; }
#header ul.head-nav.active { right: 0; }
#header ul.head-nav > li { width: 80%; margin: 0 auto; border-bottom: 1px solid #429DF8; }
#header ul.head-nav > li + li { margin: 0 auto; }
#header ul.head-nav .header_recruit, #header ul.head-nav .header_contact { border: none; }
#header ul.head-nav a { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; padding: 3vw 5vw; color: #429DF8; font-weight: 700; }
#header ul.head-nav a:after { content: ""; display: block; width: 7vw; height: 7vw; background: url(../img/yajirushi.svg) no-repeat center center/100% auto; }
#header ul.head-nav li.header_contact { margin-top: 3vw; }
#header ul.head-nav li.header_contact a:after { background: url(../img/yajirushi3.svg) no-repeat center center/100% auto; }
#header ul.head-nav li.header_recruit { margin-top: 5vw; }
#header ul.head-nav li.header_recruit a { color: #fff; background: #429DF8; }
#header ul.head-nav li.header_recruit a:after { background: url(../img/yajirushi2.svg) no-repeat center center/100% auto; }
#header ul.head-nav li.header_recruit a, #header ul.head-nav li.header_contact a { width: 80%; padding-left: 10vw; margin: 0 auto; }
#header ul.head-nav li.hasSub { margin-top: 0.8em; }
#header ul.head-nav li.hasSub > ul { margin-left: 3em; }
#header ul.head-nav li.hasSub a { padding-top: 1vw; }

.Page-Title { padding: 10vw 0; font-size: MIN(6vw, 22px); }
.Page-Title:before { top: -20px; width: 30vw; height: 50vw; }

.Pankuzu, .Pankuzu_w { padding-bottom: 10vw; margin: 0 0 0 5vw; font-size: MIN(2.8vw, 15px); }

/* =========================================================
	フッター
========================================================= */
.footInfo .wrapper { padding: 8vw 0; border-radius: 5vw; }
.footInfo h2 { margin-bottom: 5vw; font-size: MIN(9vw, 22px); }
.footInfo h2 i { margin-bottom: 0.5em; font-size: MIN(4vw, 16px); }
.footInfo h2 + p { font-size: MIN(3vw, 16px); }
.footInfo ul { margin-top: 5vw; }
.footInfo ul li { width: 100%; }
.footInfo ul .footInfo_Tel p, .footInfo ul .footInfo_Mail p { font-size: MIN(3.5vw, 16px); }
.footInfo ul .footInfo_Tel p:before, .footInfo ul .footInfo_Tel p:after, .footInfo ul .footInfo_Mail p:before, .footInfo ul .footInfo_Mail p:after { width: 0.8em; height: 0.8em; }
.footInfo ul .footInfo_Tel p:before, .footInfo ul .footInfo_Mail p:before { margin: 0 2vw -2px 0; }
.footInfo ul .footInfo_Tel p:after, .footInfo ul .footInfo_Mail p:after { margin: 0 0 -2px 2vw; }
.footInfo ul .footInfo_Tel a, .footInfo ul .footInfo_Mail a { width: 80%; height: 15vw; margin: 3vw auto 0 auto; font-size: MIN(4.5vw, 18px); }
.footInfo ul .footInfo_Tel a:after, .footInfo ul .footInfo_Mail a:after { width: 7vw; height: 7vw; margin-right: 4vw; }
.footInfo ul .footInfo_Tel a span { margin-left: -3vw; }
.footInfo ul .footInfo_Tel a i { margin: 9px 0 0 -1px; font-size: 16px; }
.footInfo ul .footInfo_Tel a:before { width: 8vw; height: 8vw; margin: 0 0 0 8vw; }
.footInfo ul .footInfo_Mail { margin-top: 5vw; }
.footInfo ul .footInfo_Mail a { font-size: MIN(3.8vw, 17px); }
.footInfo ul .footInfo_Mail a:before { width: 6.2vw; height: 6.2vw; margin-left: 4.5vw; }

footer { padding: 0 0 5vw 0; }
footer h1 { width: 50vw; }
footer h1 + p { margin-top: 5vw; }
footer table { display: none; }
footer ul + div { margin-top: 10vw; font-size: MIN(3vw, 16px); text-align: center; }
footer .copy { margin-top: 10vw; font-size: MIN(3vw, 16px); }

/* =========================================================
	トップ
========================================================= */
#top { padding: 5vw 0 20vw 0; }
#top .top_MainImage { height: 132vw; }
#top .top_MainImage h2 { padding: 3vw 0 0 35vw; font-size: 5vw; letter-spacing: 0.4em; }
#top .top_MainImage h2 + p { margin: -10px 0 0 4vw; }
#top .top_MainImage .top_MainImage_img01, #top .top_MainImage .top_MainImage_img02, #top .top_MainImage .top_MainImage_img03 { outline-offset: 5px; }
#top .top_MainImage img.top_MainImage_img01 { top: 5vw; left: 3vw; width: 30vw; height: 30vw; }
#top .top_MainImage img.top_MainImage_img02 { top: 10vw; left: auto; right: 3vw; width: 37vw; height: 37vw; }
#top .top_MainImage .top_MainImage_img03 { bottom: 0; right: 0; width: 75vw; height: auto; }
#top .top_MainImage .top_MainImage_img03 a { right: 3vw; bottom: 3vw; width: 40vw; height: 18vw; padding: 1vw; background-position: bottom 1.2vw right 1.5vw; background-size: 3vw auto; }
#top .top_MainImage .top_MainImage_img03 a .top_MainImage_ttl { padding: 2vw; background-position: center right 2vw; background-size: 6vw 6vw; }
#top .top_MainImage .top_MainImage_img03 a .top_MainImage_ttl:before { width: 8vw; height: 8vw; }
#top .top_MainImage .top_MainImage_img03 a .top_MainImage_ttl .top_MainImage_ttl_contents { margin-left: 1.8vw; font-size: 3.5vw; }
#top .top_MainImage .top_MainImage_img03 a .top_MainImage_ttl .top_MainImage_ttl_contents span { margin: -1vw 0 1.5vw 0; font-size: 2.5vw; }
#top .top_MainImage .top_MainImage_img03 a p { margin: 0.5vw 0 0 -2.5vw; font-size: 2vw; letter-spacing: 8%; }
#top .top_Service { margin-top: 15vw; }
#top .top_Service:before { top: 50vw; width: 100%; height: 75vw; }
#top .top_Service:after { bottom: -80vw; width: 100%; height: 100vw; }
#top .top_Service ul li + li { margin-top: 8vw; }
#top .top_Service h2 { font-size: MIN(5vw, 22px); }
#top .top_Service h2 span { padding: 1.5vw 3vw; }
#top .top_Service h2 br + span { margin-top: 2vw; }
#top .top_Service p { margin: 5vw 0; }
#top .top_Service table { margin-top: 5vw; background-position: top 8vw center; background-size: 93% auto; }
#top .top_Service table tr:nth-child(2) td { padding-top: 27vw; }
#top .top_Service table .top_Service_gus, #top .top_Service table .top_Service_gus, #top .top_Service table .top_Service_storage, #top .top_Service table .top_Service_factory { width: 35vw; height: 35vw; }
#top .top_Service table h3 { font-size: MIN(3vw, 16px); }
#top .top_Service table .top_Service_gus { padding-top: 7vw; }
#top .top_Service table .top_Service_gus img { width: 7.5vw; }
#top .top_Service table .top_Service_gus h3 { margin-top: 2vw; }
#top .top_Service table .top_Service_storage { padding-top: 9vw; }
#top .top_Service table .top_Service_storage img { width: 15vw; }
#top .top_Service table .top_Service_storage h3 { margin-top: 2vw; }
#top .top_Service table .top_Service_factory { padding-top: 9vw; }
#top .top_Service table .top_Service_factory img { width: 12vw; }
#top .top_Service table .top_Service_factory h3 { margin-top: 2vw; }
#top .top_Service table .top_Service_environment { padding-top: 8.6vw; }
#top .top_Service table .top_Service_environment img { width: 12vw; }
#top .top_Service table .top_Service_environment h3 { margin-top: 2vw; }
#top .top_Products ul li { width: 100%; }
#top .top_Products h3 { margin: 10vw 0 5vw 0; font-size: MIN(4.5vw, 20px); }
#top .top_Products .top_Products_Link { margin-top: 10vw; }
#top .top_Products .top_Products_Link a { width: 48%; margin-bottom: 3.8vw; border-radius: 4vw; }
#top .top_Products .top_Products_Link a span { padding: 3vw 5vw; font-size: MIN(4vw, 18px); background-position: right 3vw center; background-size: 7vw 7vw; border-radius: 4vw 4vw 0 0; }
#top .top_Products .btn02 { margin: 5vw auto 0 auto; }
#top .top_OurStrength { padding: 6vw 0; }
#top .top_OurStrength ul { margin-top: 10vw; }
#top .top_OurStrength ul li { margin-bottom: 5vw; padding: 0 25px 23px 25px; }
#top .top_OurStrength ul li span { top: 4vw; left: 3.8vw; font-size: MIN(15vw, 22px); }
#top .top_OurStrength ul li img { width: 25vw; margin: 5vw auto; }
#top .top_OurStrength ul li h3 { margin-bottom: 5vw; font-size: MIN(4.5vw, 20px); }
#top .top_Company h2.t_title { margin-bottom: 10vw; }
#top .top_Company ul { margin-top: 5vw; }
#top .top_Company ul li { width: 100%; }
#top .top_Company ul li:nth-child(1) { -webkit-box-align: end; align-items: flex-end; margin-bottom: 5vw; }
#top .top_Company ul li:nth-child(1) img:nth-child(1) { width: 45vw; height: auto; }
#top .top_Company ul li:nth-child(1) img:nth-child(2) { width: 40vw; height: auto; margin-left: 3vw; }
#top .top_Company ul a { padding: 4vw 0; font-size: MIN(4vw, 18px); background-position: right bottom 4vw; background-size: 7vw auto; }
#top .top_Company ul a i { margin: 0 0 1vw 0; font-size: MIN(3vw, 16px); }
#top .top_Recruit { padding-top: 5vw; }
#top .top_Recruit:before { top: -25vw; }
#top .top_Recruit ul { margin: 10vw 0; }
#top .top_Recruit strong { padding: 2vw 3vw; margin-bottom: 5vw; font-size: MIN(4vw, 18px); line-height: 1.5em; letter-spacing: 8%; }
#top .top_Recruit strong + p { letter-spacing: 4%; }
#top .top_Recruit .btn02 { margin: 5vw 0 0 0; }
#top .top_News ul li { width: 100%; }
#top .top_News .top_NewsItem { margin-top: 10vw; padding-bottom: 5vw; }
#top .top_News .top_NewsItem + div { margin-top: 5vw; }
#top .top_News .top_NewsItem > div { margin-bottom: 3vw; }
#top .top_News .top_NewsItem > div a { margin-left: 1em; padding: 0.5em 1.6em; font-size: MIN(3vw, 15px); }
#top .top_News ul .btn02 { display: none; }
#top .top_News ul + .btn02 { display: -webkit-flex; display: flex; margin: 5vw auto 0 auto; }

/* =========================================================
	見出し
========================================================= */
h2.t_title { font-size: MIN(4vw, 22px); line-height: 1.5em; text-align: center; }
h2.t_title span { display: block; text-align: center; }
h2.t_title span:before { padding: 0.5vw 2vw 0 1vw; font-size: MIN(3vw, 15px); }
h2.t_title i { font-size: MIN(9vw, 18px); }

h2.t_title2 { font-size: MIN(9vw, 18px); text-align: center; }
h2.t_title2 i { margin-top: 2vw; font-size: MIN(4vw, 22px); }

.c_Title, .c_Title_w { margin-bottom: 13vw; font-size: MIN(9vw, 22px); }
.c_Title i, .c_Title_w i { margin-bottom: 0.5em; font-size: MIN(4vw, 16px); }

.c_Title2, .c_Title2_w { font-size: MIN(5vw, 21px); }

.c_Title3, .c_Title3_w { font-size: MIN(4.5vw, 20px); }

.c_Title4, .c_Title4_w { font-size: MIN(3.9vw, 18px); }

.c_Title5, .c_Title5_w { font-size: MIN(5.5vw, 22px); }

/* =========================================================
	会社案内
========================================================= */
#company .anchorLink li { width: 48%; }
#company .anchorLink a { padding: 0.3em 0; font-size: MIN(3.4vw, 16px); }
#company #Msg h2 { font-size: 5.5vw; font-size: MIN(5.5vw, 22px); }
#company #Msg .Img { margin-top: 7vw; }
#company #Philosophy ol li { font-size: MIN(3.8vw, 17px); }
#company #Philosophy li + li { margin-top: 0.5em; }
#company #Groupcompanies h3 { margin-bottom: 0.6em; font-size: MIN(4.5vw, 20px); }
#company #Groupcompanies dl { -webkit-flex-direction: column; flex-direction: column; }
#company #Groupcompanies dl dt, #company #Groupcompanies dl dd { width: 100%; }
#company #Groupcompanies dl dd { margin-top: 3vw; }
#company #Groupcompanies .btn01 { margin-left: auto; font-size: MIN(3.2vw, 16px); }
#company #Affiliation li, #company #Client li { width: 100%; font-size: MIN(3.4vw, 16px); }

#greeting .Greeting_Affiliation .btn02 { width: 70%; margin-bottom: 10vw; }

#esg .Esg_About h2 { font-size: MIN(6vw, 22px); line-height: 1.5em; }
#esg .Esg_About h2 i { margin-bottom: 1em; }
#esg .Esg_About .c_b_Box { width: 100%; }
#esg .Esg_About .c_b_Box h2 { margin-bottom: 1em; }
#esg .Esg_Ｗorkingon .c_w_Box > div { margin-bottom: 8vw; }
#esg .Esg_Ｗorkingon h3 { font-size: MIN(6.5vw, 22px); text-align: center; }
#esg .Esg_Ｗorkingon h3 i { margin-bottom: 0.2em; }
#esg .Esg_Ｗorkingon .Esg_Ｗorkingon_ico { -webkit-justify-content: center; justify-content: center; margin-top: 5vw; }
#esg .Esg_Ｗorkingon .Esg_Ｗorkingon_ico img { width: 10vw; }
#esg .Esg_Ｗorkingon .c_Flex2 + .c_Flex2 { margin-top: 15vw; }
#esg .Esg_Ｗorkingon .Img { margin-bottom: 4vw; }

/* =========================================================
	事業案内
========================================================= */
#service .Service_Detail .Service_Detail_Container { gap: 3vw; }
#service .Service_Detail .Service_Detail_Container ul li { padding: 2vw 2vw 2vw 3vw; font-size: MIN(3.4vw, 16px); }
#service .Service_Detail .Service_Detail_Container ul li + li { margin-top: 15px; }
#service .Service_Detail .Service_Detail_Container > div { width: 38%; padding: 3vw; font-size: MIN(3.6vw, 16px); }
#service ul.Service_Example { -webkit-justify-content: center; justify-content: center; gap: 2.5vw; }
#service ul.Service_Example li { width: 31%; padding: 2vw; font-size: MIN(3.6vw, 16px); }

/* =========================================================
	えらばれる理由
========================================================= */
#reason .c_Title_No { font-size: MIN(3.5vw, 22px); }
#reason .c_Title_No span { margin-right: 0.5em; font-size: MIN(10vw, 22px); }
#reason .Reason_01 .Reason_01_Image .Image_Container { width: 77vw; height: 77vw; margin: -5vw 0 10vw 0; }
#reason .Reason_01 .Reason_01_Image .diamond { width: 30vw; height: 30vw; border-radius: 3vw; }
#reason .Reason_01 .Reason_01_Image .diamond .content { width: 28vw; font-size: MIN(3.3vw, 16px); }
#reason .Reason_01 .Reason_01_Image .top { top: 0; }
#reason .Reason_01 .Reason_01_Image .top .content { margin: 11vw 0 0 0; }
#reason .Reason_01 .Reason_01_Image .bottom { bottom: -5vw; }
#reason .Reason_01 .Reason_01_Image .bottom .content { margin: 14vw 0 0 3vw; }
#reason .Reason_01 .Reason_01_Image .left { left: 1vw; }
#reason .Reason_01 .Reason_01_Image .left .content { margin: 17vw 0 0 -3vw; }
#reason .Reason_01 .Reason_01_Image .right { right: 1vw; }
#reason .Reason_01 .Reason_01_Image .right .content { margin: 7vw 0 0 4vw; }
#reason .Reason_01 .Reason_01_Image .center-circle { width: 35vw; height: 35vw; padding: 2vw 3vw 3vw 3vw; }
#reason .Reason_01 .Reason_01_Image .main-text { margin-top: 1em; font-size: 2.2vw; font-size: MIN(2.2vw, 14px); }
#reason .Reason_02 .c_Flex3 li { width: 100%; }
#reason .Reason_02 .c_Flex3 li + li { margin-top: 5vw; }
#reason .Reason_02 .c_b_Box { padding: 5vw 5vw; }
#reason .Reason_03 .c_Flex3 li { width: 45%; }
#reason .Reason_03 .c_Flex3 p { font-size: MIN(3vw, 16px); }

/* =========================================================
	採用情報
========================================================= */
#recruit #Msg .c_Flex2 em { display: block; font-size: MIN(6vw, 22px); text-align: center; }
#recruit #Entry .btn01 { width: 80%; }

#work .Work_Links a { width: 100%; padding: 5vw 5vw 13vw 5vw; }
#work .Work_Links a + a { margin-top: 10vw; }
#work .Work_Detail .c_Flex2 { -webkit-box-direction: reverse; flex-direction: column-reverse; }
#work .Work_Detail .c_Flex2 .Img { margin-bottom: 10vw; }
#work a.Work_Link { width: 95%; margin-top: 8vw; padding: 4vw 4vw 4vw 8vw; }
#work a.Work_Link div { margin: 0; }
#work a.Work_Link img { width: 20vw; height: 20vw; }

#environment .Environment_Benefits .c_Flex2 .Img_w { margin-top: 10vw; }
#environment .Environment_Benefits .c_Flex3 li { padding: 4vw 3vw 4.5vw 3vw; }
#environment .Environment_Benefits .c_Flex3 h3 { margin-bottom: 0.8em; }
#environment .Environment_Benefits .c_Flex3 .Environment_Benefits_Ico { width: 18vw; height: 18vw; padding: 3vw; }
#environment .Environment_Benefits .c_Flex3 p { font-size: MIN(2.8vw, 16px); }

#interview .Interview_Link a { padding: 5vw 5vw 10vw 5vw; }
#interview .c_w_Box .c_Flex2:nth-child(odd) { -webkit-box-direction: reverse; flex-direction: column-reverse; }
#interview .c_w_Box .c_Flex2:nth-child(odd) .Img { margin: 5vw 0; }
#interview dl.Interview_Schedule { padding: 2vw 0 2vw 0; }
#interview dl.Interview_Schedule dt, #interview dl.Interview_Schedule dd { padding: 2vw 0; }
#interview dl.Interview_Schedule dt { width: 20%; }
#interview dl.Interview_Schedule dd { width: 80%; }

/* =========================================================
	ブログレイアウト：取扱商品・お知らせ
========================================================= */
ul.FlexListBox { -webkit-flex-direction: column; flex-direction: column; }
ul.FlexListBox > li:nth-child(1) .CatLink { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }
ul.FlexListBox > li:nth-child(1) .CatLink .btn02 { width: 48%; margin: 0 0 0.8em 0; padding: 0 1em 0 1.5em; font-size: MIN(3.5vw, 16px); line-height: 1.2em; }
ul.FlexListBox > li:nth-child(1) .CatLink .btn02 + a { margin: 0 0 0.8em 0; }

#product ul.ProductList li { width: 46%; }
#product ul.ProductList li:nth-child(n+3) { margin-top: 2em; }
#product ul.ProductList h3 { font-size: MIN(3vw, 15px); }

ul.InfoList li { -webkit-flex-wrap: wrap; flex-wrap: wrap; padding: 5vw 0; }
ul.InfoList li > div { margin-bottom: 4vw; }

#pager a, #pager span { width: 7vw; height: 7vw; }

#faq dl.Panel { margin-bottom: 5vw; }
#faq dl.Panel dt span:first-child { width: 8vw; font-size: MIN(4vw, 18px); }
#faq dl.Panel dt p { padding: 3vw; line-height: 1.5em; }
#faq dl.Panel dt span:last-child { width: 4vw; padding: 0 3vw; font-size: MIN(3.5vw, 16px); }
#faq dl.Panel dd { padding: 0; }
#faq dl.Panel dd span:first-child { width: 8vw; font-size: MIN(4vw, 18px); }
#faq dl.Panel dd p { padding: 3vw 0; font-size: MIN(3.5vw, 16px); }
#faq dl.Panel dd pre { margin: 0 0 0 70px; }

/* =========================================================
	お問い合わせ
========================================================= */
#contact .Contact_Tel .c_Flex2 { margin-bottom: 5vw; }
#contact .Contact_Tel h2 { margin-bottom: 0.5em; }
#contact .Contact_Tel em, #contact .Contact_Tel a { margin-bottom: 0; }
#contact .c_Table dt, #contact .c_Table dd { width: 100%; }
#contact input[type="submit"] { margin: 0 auto; border: none; cursor: pointer; }
#contact input[type="submit"]:hover { opacity: 0.7; }
#contact #mfp_phase_confirm #mfp_confirm_table th, #contact #mfp_phase_confirm #mfp_confirm_table td { display: block; width: 100%; }
#contact #mfp_phase_confirm #mfp_confirm_table td { width: 100%; padding-bottom: 1em; }
#contact #mfp_phase_confirm .mfp_element_button { width: 40vw; height: 10vw; padding: 0 4.5vw 0 5.5vw; font-size: MIN(4vw, 17px); }

/* =========================================================
	共通
========================================================= */
.bg_Blur_R:before { width: 40vw; height: 70vw; }

.bg_Blur_L:before, .bg_Blur_L:after, .bg_Blur_LB:before, .bg_Blur_LB:after { width: 40vw; height: 80vw; }

.bg_b, .bg_w { padding: 10vw 0; border-radius: 8vw; }

.c_w_Box, .c_b_Box { padding: 8vw 5vw; border-radius: 5vw; }

.c_Flex2 > li, .c_Flex2 > a, .c_Flex2 > div { width: 100%; }
.c_Flex2 > li + li, .c_Flex2 > li a, .c_Flex2 > li div, .c_Flex2 > a + li, .c_Flex2 > a a, .c_Flex2 > a div, .c_Flex2 > div + li, .c_Flex2 > div a, .c_Flex2 > div div { margin-top: 5vw; }
.c_Flex2 .Img + .Img, .c_Flex2 .Img_w + .Img_w { margin-top: 8vw; }

.c_Flex3 li, .c_Flex3 a, .c_Flex3 div { width: 48%; }
.c_Flex3 li + li:nth-child(n+3), .c_Flex3 li a:nth-child(n+3), .c_Flex3 li div:nth-child(n+3), .c_Flex3 a + li:nth-child(n+3), .c_Flex3 a a:nth-child(n+3), .c_Flex3 a div:nth-child(n+3), .c_Flex3 div + li:nth-child(n+3), .c_Flex3 div a:nth-child(n+3), .c_Flex3 div div:nth-child(n+3) { margin-top: 5vw; }

dl.c_Table dt, dl.c_Table dd, dl.c_Table2 dt, dl.c_Table2 dd, dl.c_Table_w dt, dl.c_Table_w dd, dl.c_Table2_w dt, dl.c_Table2_w dd { line-height: 1.8em; }
dl.c_Table dt, dl.c_Table2 dt, dl.c_Table_w dt, dl.c_Table2_w dt { width: 100%; padding: 1em 0 0 0; }
dl.c_Table dd, dl.c_Table2 dd, dl.c_Table_w dd, dl.c_Table2_w dd { width: 100%; padding: 0.5em 0 1em 0; border: none; }
dl.c_Table .Img img, dl.c_Table2 .Img img, dl.c_Table_w .Img img, dl.c_Table2_w .Img img { border-radius: 2vw; }

dl.c_Table2 dt, dl.c_Table2_w dt { padding: 1.5em 0 0 0; }
dl.c_Table2 dd, dl.c_Table2_w dd { padding: 1em 0 1.5em 0; }

ul.Tab-List { margin: 0 0 10vw 0; }
ul.Tab-List li { padding: 2vw; }

.PageLinkPosition { padding-top: 20vw; margin-top: -20vw; }

.btn01, .btn02, .btn03 { width: 50vw; height: 15vw; padding: 0 4.5vw 0 5.5vw; font-size: MIN(4vw, 17px); }
.btn01:after, .btn02:after, .btn03:after { width: 7.5vw; height: 7.5vw; }
