@charset "utf-8";

/*========================

common.css

========================*/

/*---------------------------------------------
reset
---------------------------------------------*/
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
}

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

*:focus { outline: none; }

html { font-size: 62.5%; }

body { font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'Noto Sans JP', Helvetica, 'Arial', 'roboto', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif; line-height:1; height:100%; text-align:left; margin:0; padding:0; background-color:var(--beige); color:#333; -webkit-text-size-adjust:100%; position:relative; }

:root {

/*--- color ---*/
--main:#fedd00;
--sub:#203e4a;

--yellow:#FEE506;
--green:#56c120;
--pink:#f76cc4;

--at:#d9152a;
--at_op10:#fdeef0;
--mt:#0053a0;
--mt_op10:f2f6fe;

--beige:#FAF2E0;
--gray_f7:#f7f7f7;
--gray_f2:#f2f2f2;
--gray_ee:#EEEEEE;
--gray_eb:#EBEBEB;
--gray_dd:#DDDDDD;
--gray_cc:#CCCCCC;
--gray_9f:#9F9F9F;
--gray_70:#707070;
--gray_66:#666666;
--gray_51:#515151;
--gray_33:#333333;
--pale_gray:#F4F4F7;
--white:#FFFFFF;
--dark_black:#1A1A1A;
--black:#333333;
--pale_yellow:#fffdeb;
--light_yellow:#FFFBDA;

--light_blue:#D9F2FF;
--pale_blue:#bce8f1;
--blue:#0879D1;
--light_green:#eef6e7;
--blue_green:#4fac80;
--orange:#FF6600;
--orange2:#FB9B2F;
--red:#ea1c0f;
--light_red:#ea1c0f;

--hilight:#ffff77;

--cobalt_blue:#3AB6CC;
--yellow_green:#89BA3C;
--blue_green:#3EBE95;

.cl_white { color:#FFFFFF; }
.cl_red { color:#d9152a; }
.cl_blue { color:#4E85ED; }
.cl_sun { color:#d9152a; }
.cl_sat { color:#4E85ED; }

/*--- background_color ---*/
.bg_yellow { background-color:var(--yellow); }
.bg_yellow.op20 { background-color:rgb(254,229,6,0.2); }
.bg_yellow.op50 { background-color:rgb(254,229,6,0.5); }

.bg_pink { background-color:var(--pink); }
.bg_pink.op20 { background-color:rgb(247,108,196,0.2); }
.bg_pink.op50 { background-color:rgb(247,108,196,0.5); }

/*--- link_color ---*/
--link:#3399cc;
--link_color:#021e88;

/*--- gradient ---*/
--grad_group:rgb(254,57,75);
--grad_group:linear-gradient(180deg, rgba(254,57,75,1) 0%, rgba(217,21,42,1) 100%);
--grad_group_rev:rgb(217,21,42);
--grad_group_rev:linear-gradient(180deg, rgba(217,21,42,1) 0%, rgba(254,57,75,1) 100%);

--grad_baseball:rgb(23,82,153);
--grad_baseball:linear-gradient(180deg, rgba(23,82,153,1) 0%, rgba(12,41,76,1) 100%);
--grad_baseball_rev:rgb(12,41,76);
--grad_baseball_rev:linear-gradient(180deg, rgba(12,41,76,1) 0%, rgba(23,82,153,1) 100%);

--grad_a :rgb(0,201,255);
--grad_a :linear-gradient(342deg, rgba(0,201,255,1) 0%, rgba(146,254,157,1) 100%);

--grad_a_op15 :rgb(0,201,255,0.15);
--grad_a_op15 :linear-gradient(342deg, rgba(0,201,255,0.15) 0%, rgba(146,254,157,0.15) 100%);

/*--- width ---*/
--max-width:1280px;

/*--- font ---*/
--mincho:"游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
--icon: "Font Awesome 6 Pro";
}
.font_bold { font-weight:600; }

/*--- display ---*/
.di_none { display:none; }

.sp { display:none; }
.pc { display:flex; }

/*--- text-align ---*/
.t_left { text-align:left; }
.t_center { text-align:center; }
.t_right { text-align:right; }

/*---------------------------------------------
h_menu
---------------------------------------------*/
.menu_trigger {
 background-color:var(--white);
 display: inline-block;
 transition: all .4s;
 box-sizing: border-box;
 cursor :pointer;
}

.menu_trigger span {
 display: inline-block;
 transition: all .4s;
 box-sizing: border-box;
 cursor :pointer;
}

.menu_trigger {
 align-items:center;
 display:flex;
 justify-content:center;
 position: fixed;
 top: 0;
 right: 0;
 width:73px;
 height:73px;
 z-index: 102;
}

.menu_trigger > span {
 position: absolute;
 background-color: var(--green);
 width:22px;
 height:3px;
 left:25px;
 right: auto;
 margin: auto;
 border-radius:6px;
}

.menu_trigger > span:nth-of-type(1) {
 top:27px;
}

.menu_trigger > span:nth-of-type(2) {
 top:-1px;
 bottom:0;
}

.menu_trigger > span:nth-of-type(3) {
 bottom:27px;
}

.menu_trigger.active > span {
 background-color: var(--green);
}
.menu_trigger.active > span:nth-of-type(1) {
 -webkit-transform: translateY(9px) rotate(-45deg);
 transform: translateY(9px) rotate(-45deg);
}

.menu_trigger.active > span:nth-of-type(2) {
 opacity:0;
}

.menu_trigger.active > span:nth-of-type(3) {
 -webkit-transform: translateY(-8px) rotate(45deg);
 transform: translateY(-8px) rotate(45deg);
}

/*---------------------------------------------
pagetop
---------------------------------------------*/
#pagetop {
 position:fixed;
 bottom:20px;
 right:20px;
 z-index:21;
}

#pagetop a {
 align-items:center;
 /*background-color:var(--green);*/
 background-color:var(--sub);
 border-radius:50%;
 flex-direction:column;
 display:flex;
 justify-content:center;
 position:relative;
 height:100px;
 width:100px;
}

#pagetop a:hover {
 opacity:0.8;
}

#pagetop a:after {
 content:"\f077";
 color:var(--white);
 font-family:var(--icon);
 font-size:1.0rem;
 font-weight:600;
 left:50%;
 margin-left:-6px;
 top:20px;
 opacity:0.7;
 position:absolute;
 z-index:3;
}

#pagetop a span {
 color:var(--white);
 font-size:1.1rem;
 font-weight:600;
}

body.fixed #pagetop {
 z-index:-1;
}

/*---------------------------------------------
btn
---------------------------------------------*/
.btn label,
.btn a {
align-items:center;
background-color:var(--white);
border-color:var(--gray_cc);
border-style:solid;
border-width:1px;
border-radius:40px;
column-gap:15px;
display:flex;
 font-size:1.5rem;
font-weight:600;
justify-content:center;
padding:20px 30px;
position:relative;
text-align:center;
}

.btn label:after,
.btn a:after {
 content:"\f054";
 color:var(--gray_cc);
 font-family:var(--icon);
 font-weight:400;
 right:15px;
 top:50%;
 margin-top:-7px;
 position:absolute;
 font-size:1.3rem;
 z-index:3; 
}

.btn label:hover,
.btn a:hover {
 cursor:pointer;
}

.btn a img {
 height:19px;
 width:auto;
}

.btn.orange a {
 border-color:var(--orange);
 color:var(--orange);
 font-weight:600;
}

.btn.orange a:after {
 color:var(--orange);
}

.btn.orange a:hover {
 opacity:0.7;
}

.btn.blue label,
.btn.blue a {
 border-color:var(--blue);
 color:var(--blue);
 font-weight:600;
}

.btn.blue label:after,
.btn.blue a:after {
 color:var(--blue);
}

.btn.blue a:hover {
 opacity:0.7;
}

.btn.gray label,
.btn.gray a {
 border-color:var(--gray_dd);
 color:var(--gray_33);
 font-weight:600;
}

.btn.gray label:after,
.btn.gray a:after {
 color:var(--gray_dd);
}

.btn.gray label:hover,
.btn.gray a:hover {
 background-color:var(--yellow);
 border-color:var(--yellow);
 color:var(--gray_33);
}

.btn.gray label:hover:after,
.btn.gray a:hover:after {
 color:var(--gray_33);
 content:"\f078";
}

.btn.red a {
 border-color:var(--red);
 color:var(--red);
 font-weight:600;
}

.btn.red a:after {
 color:var(--red);
}

.btn.red a:hover {
 opacity:0.7;
}

/*--- btn_bg_color ---*/

.btn.bg_green label,
.btn.bg_green a {
 background-color:var(--green);
 border:none;
 color:var(--white);
 font-weight:600;
}

.btn.bg_green label,
.btn.bg_green a:after {
 color:var(--white);
 opacity:0.7;
 font-size:1.5rem;
}

.btn.bg_green label:hover,
.btn.bg_green a:hover {
 cursor:pointer;
 opacity:0.7;
}

.btn.bg_blue label,
.btn.bg_blue a {
 background-color:var(--blue);
 border:none;
 color:var(--white);
 font-weight:600;
}

.btn.bg_blue label:after,
.btn.bg_blue a:after {
 color:var(--white);
 opacity:0.7;
}

.btn.bg_blue label:hover,
.btn.bg_blue a:hover {
 cursor:pointer;
 opacity:0.7;
}

.btn.bg_orange label,
.btn.bg_orange a {
 background-color:var(--orange);
 border:none;
 color:var(--white);
 font-weight:600;
}

.btn.bg_orange label:after,
.btn.bg_orange a:after {
color:var(--white);
opacity:0.6;
}

.btn.bg_orange label:hover,
.btn.bg_orange a:hover {
 cursor:pointer;
 opacity:0.6;
}

/*--- btn_group ---*/
.btn_group {
 display:flex;
}

.btn_group ul {
 column-gap:20px;
 display:flex;
}

.btn_group ul li {
 flex:0 1 100%;
}

.btn_group ul li a {
 white-space:nowrap;
}

/*--- size ---*/
.btn.s label,
.btn.s a {
 border-radius:30px;
 font-size: 1.3rem;
 font-weight: 600;
 padding: 17px 30px;
}

.btn.s label:after,
.btn.s a:after {
 font-size:1.2rem;
 right:15px;
 top:50%;
 margin-top:-6px;
}

.btn.l label,
.btn.l a {
 border-radius:50px;
 display:flex;
 font-size:1.6rem;
 padding:30px 50px;
}

/*--- disabled ---*/


/*---------------------------------------------
nav
---------------------------------------------*/
nav {
 position:relative;
 width:100%;
}

#nav {
 background-color:var(--white);
 display:none;
 justify-content:center;
 position:relative;
}

/*---------------------------------------------
modal
---------------------------------------------*/
.modal-wrap > input {
	display: none;
}

.modal-overlay {
	background: rgba(39, 39, 41, .50);
	display: flex;
	justify-content: center;
	overflow: auto;
	height: 100%;
	width: 100%;
	position: fixed;
	top:0;
	left:0;
	z-index: 9999;
	opacity: 0;
	transition: opacity 0.5s, transform 0s 0.3s;
	transform: scale(0);
}

.modal-trigger {
	position: absolute;
	width: 100%;
	height: 100%;
}

.modal-content {
	background:var(--white);
	box-shadow: 0 0 15px rgba(0, 0, 0, .07);
	box-sizing: border-box;
	align-self: center;
	line-height: 1.4em;
	max-width:80vw;
 max-height:90vh;
	padding:5vw;
	min-width:80vw;
	transform: scale(1.2);
	transition: 0.3s;
 overflow-y:scroll;
}

.close-button {
	align-items: center;
 background-color:var(--dark_black);
	border-radius:24px;
	color: var(--white);
	cursor: pointer;
	display:flex;
	justify-content: center;
	font-size:1.4rem;
	line-height: 1;
	height:48px;
	width:120px;
	position: absolute;
	top: 20px;
	right: 20px;
 z-index:1;
}

.close-button::before,
.close-button::after {
	background-color: rgba(255, 255, 255, .5);
 color: var(--white);
	content: "";
	height:1px;
	width:13px;
	position:absolute;
}

.close-button::before {
 color: var(--white);
	transform: rotate(45deg) translateY(50%);
	top: calc(50% - 1px);
	left: 20px;
}

.close-button::after {
	transform: rotate(-45deg) translateY(50%);
	top: calc(50% - 1px);
	left:19px;
}

.close-button span {
	display: inline-block;
	padding-left:1.7em;
}

.modal-wrap input:checked + .modal-overlay {
	opacity: 1;
	transform: scale(1);
	transition: opacity 0.5s;
}

.modal-wrap input:checked + .modal-overlay .modal-content {
	transform: scale(1);
}

.modal-wrap input:checked + .modal-overlay .modal-content h2 {
 align-items:center;
 align-content:center;
 display:flex;
 font-size:2.0rem;
 font-weight:600;
 line-height:1.8;
}

.modal-wrap input:checked + .modal-overlay .modal-content h2 span.i_q {
 align-items:center;
 align-content:center;
 border-radius:30px;
 display:flex;
 justify-content:center;
 width:60px;
 height:60px;
 background-color:var(--green);
 color:var(--white);
 flex:0 0 60px;
}

.modal-wrap input:checked + .modal-overlay .modal-content h2 span:nth-child(2) {
 line-height:1.6;
 padding-left:15px;
}

.modal-wrap input:checked + .modal-overlay .modal-content .icon {
 text-align:center;
}

.modal-wrap input:checked + .modal-overlay .modal-content .scroll_area {
overflow-y:scroll;
 max-height:50vh;
}

.modal-wrap input:checked + .modal-overlay .modal-content p {
 font-size:1.6rem;
 line-height:1.8;
 margin-top:15px;
}

/*---------------------------------------------
tab
---------------------------------------------*/
.js-tab-box {
 display:flex;
 flex-direction:column;
}

.js-tab-nav {
 display:flex;
 flex:0 0 100%;
}

.js-tab-nav ul {
 border-bottom:1px solid var(--gray_dd);
 border-left:1px solid var(--gray_dd);
 border-radius:6px 6px 0 0;
 display:flex;
 flex:0 0 100%;
}

.js-tab-nav ul li {
 align-items:center;
 align-content:center;
 border-top:1px solid var(--gray_dd);
 border-right:1px solid var(--gray_dd);
 display:flex;
 justify-content:center;
 padding:25px;
 width:calc(100% / 4);
}

.js-tab-nav ul li:first-child {
 border-radius:6px 0 0 0;
}

.js-tab-nav ul li:last-child {
 border-radius:0 6px 0 0;
}

.js-tab-nav ul li.selected {
 background-color:var(--yellow);
}

.js-tab-nav ul li:hover {
 background-color:var(--yellow);
 cursor:pointer;
}

.js-tab-nav ul li img {
height:23px;
width:auto;
}

.js-tab-nav ul li span {
 font-size:1.6rem;
 font-weight:600;
 padding-left:10px;
}

.js-tab-content {
 display:none;
 flex-direction:column;
 margin-top:30px;
}

.js-tab-content > h2 {
 flex:0 0 100%;
}

/*---------------------------------------------
alert
---------------------------------------------*/
.alert {
flex:1;
padding: 15px 50px;
margin:0;
border: 1px solid transparent;
border-radius: 4px;
min-width:200px;
position:relative;
}

.alert i {
font-size:1.5rem;
line-height:1.6;
position:absolute;
left:20px;
top:50%;
margin-top:-12px;
}

.alert span {
 font-size:1.5rem;
 line-height:1.8;
 text-align:left;
}

.alert-success { background-color: #dff0d8; border-color: #d6e9c6; color: #468847; }
.alert-info { background-color: #d9edf7; border-color: #bce8f1; color: #3a87ad; }
.alert-warning { background-color: #fcf8e3; border-color: #fbeed5; color: #c09853; }
.alert-danger { background-color: #f2dede; border-color: #eed3d7; color: #b94a48; }
.alert-link { font-weight:700; }
.alert-link:hover { text-decoration:underline; }
.alert-success .alert-link { color: #356635; }
.alert-info .alert-link { color: #2d6987; }
.alert-warning .alert-link { color: #a47e3c; }
.alert-danger .alert-link { color: #953b39; }

/*---------------------------------------------
animation
---------------------------------------------*/
/* fadeUp */
.fadeUp {
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}
.fadeUpTrigger{
    opacity: 0;
}

/* fadeFromLeft */
.fadeFromLeft {
 animation-timing-function:ease;
 animation-name:fadeFromLeftAnime;
 animation-delay:0.65s;
 animation-duration:1.5s;
 animation-fill-mode:forwards;
 opacity:0;
}

@keyframes fadeFromLeftAnime{
  from {
    opacity: 0;
  transform: translateX(-100px);
  }
  to {
    opacity: 1;
  transform: translateX(10px);
  }
}

.fadeFromLeftTrigger{
 opacity: 0;
}

/* fadeFromRight */
.fadeFromRight {
 animation-timing-function:ease;
 animation-name:fadeFromRightAnime;
 animation-delay:0.65s;
 animation-duration:1.5s;
 animation-fill-mode:forwards;
 opacity:0;
}

@keyframes fadeFromRightAnime{
  from {
    opacity: 0;
  transform: translateX(5vw);
  }
  to {
    opacity: 1;
  transform: translateX(0);
  }
}

.fadeFromRightTrigger{
 opacity: 0;
}

/* fadeIn */
.fadeIn {
 animation-name:fadeInAnime;
 animation-duration:0.5s;
 animation-fill-mode:forwards;
 opacity:0;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.fadeInTrigger {
 opacity: 0;
}

/* bound */
.bound {
 animation-name: bound-anim;
 animation-duration: 1.5s;
 animation-iteration-count: 1;
 transform: translateY(0);
}

@keyframes bound-anim {
	0% { transform:scale(1) translateY(0); }
	30% { transform:scale(0.96,1.04) translateY(-20px); }
	60% { transform: scale(1) translateY(0); }
	90% { transform: scale(1.15,0.9) translateY(-20px); }
}

/*---------------------------------------------
header
---------------------------------------------*/
#header {
 display:flex;
 position:fixed;
 top:0;
 width:100%;
 z-index:19;
}

#header #header_cont {
 align-items:center;
 align-content:center;
 display:flex;
 flex:1;
 justify-content:space-between;
 margin:0 auto;
 padding:0 2vw 0 0;
 position:relative;
 z-index:22;
}

#header #header_cont #header_left {
 align-items:center;
 align-content:center;
 /*background-color:var(--white);*/
 border-radius:0 0 20px 0;
 display:flex;
 flex:0 1 auto;
 justify-content:start;
 padding:20px 30px 20px 20px;
 z-index:23;
}

#header #header_cont #header_left h1 {
}

#header #header_cont #header_left h1 a {
 display:block;
}

#header #header_cont #header_left h1 a img {
 max-width:260px;
 height:auto;
}

#header #header_cont #header_left h2 {
 align-items: flex-end;
 display: flex;
 flex: 1;
 font-size: 1.4rem;
 font-weight: 600;
 line-height: 1.6;
 justify-content:start;
 padding-left:30px;
}

#header #header_cont #header_left h2 span {
 color: var(--green);
 font-size: 2.8rem;
 font-weight: 600;
 line-height: 1;
 vertical-align: bottom;
}

#header #header_cont #header_right {
 display:flex;
 flex:0 1 auto;
 justify-content:flex-end
}

#header #header_cont #header_right .btn a {
 min-width:160px;
}

#header #header_cont #header_right .btn a:hover {
opacity:0.8;
}

#header #header_cont #header_right .btn.apply a {
padding: 17px 30px 17px 37px;
}

#header #header_cont #header_right .btn.apply a:before {
 content:"\f303";
 color:var(--white);
 font-family:var(--icon);
 font-size:1.2rem;
 font-weight:700;
 left: 17px;
 margin-top: -6px;
 opacity:0.8;
 position: absolute;
 top: 50%;
 content:none;
}

#header #header_cont #h_menu {
 display:none;
}

.fixed #header #header_cont #h_menu {
 background-color: var(--white);
 border: 1px solid var(--group);
 display: flex;
 position: fixed;
 top:10px;
 right:10px;
 width:54px;
 height:54px;
 border-radius: 27px;
 z-index:102;
}

/*--- fixed ---*/
.fixed #header {
 z-index:31;
}

.fixed #header #header_cont {
 z-index:31;
}

.fixed #header #header_cont h1 {
 display:none;
}

.fixed #header #header_cont #header_left {
 display:none;
}

.fixed #header #header_cont #header_right {
 display:none;
}

#header.fixed {
 position:fixed;
 z-index:51;
}

#header.fixed #header_cont #header_left h1 a img {
 max-width:110px;
}

#header.fixed #header_cont #header_left h2 {
 font-size:1.2rem;
}

#header.fixed #header_cont #header_left h2 span {
 font-size:2rem;
}

#header.fixed dl.kohan {
 display:none;
}

#header.fixed #header_cont #header_right .btn a {
 padding:13px 30px 13px 20px;
}

#header.fixed #header_cont #header_right .btn a span {
 font-size:1.3rem;
 line-height:1;
 padding-top:0;
}

#header.fixed #header_cont #header_right .btn a:before {
 font-size:1.0rem;
}

#header.fixed #header_cont #header_right .btn a:after {
 font-size:1.0rem;
 margin-top:-5px;
}

#header.fixed #header_cont #header_right .btn.apply a:before {
 left:15px;
 margin-top:-5px;
 position: absolute;
 top: 50%;
}

/*---------------------------------------------
nav
---------------------------------------------*/
#nav.active {
 background-color:var(--white);
 display:flex;
 flex-direction:column;
 justify-content:start;
 padding-top:0;
 top:0;
 position:fixed;
 height:calc(100%);
 z-index:30;
 overflow-y:scroll;
 width:100%;
 left:0;
 opacity:1;
}

#nav #nav_cont {
 display:flex;
 flex-direction:column;
 justify-content:start;
 padding:0;
}

#nav #nav_cont #nav_header {
 padding: 8.5vw 10vw 10vw;
}

#nav #nav_cont #nav_header h2 {

}

#nav #nav_cont #nav_header h2 a {
 display:flex;
 justify-content:center;
}

#nav #nav_cont #nav_header h2 a img {
 height: auto;
 min-width: 160px;
 max-width: 220px;
 opacity:0;
 -webkit-transition:opacity 3s;
 transition: opacity 3s;
 width:35vw;
}

#nav #nav_cont #nav_header h2 a img.lazyloaded {
 opacity:1;
}

#nav #nav_cont #nav_menu {
}

#nav #nav_cont #nav_menu ul {
 display:flex;
 justify-content:center;
 flex-wrap:wrap;
 padding:0 5vw 10vw;
}

#nav #nav_cont #nav_menu ul {
 column-gap:20px;
 display:flex;
 justify-content:space-between;
 row-gap:20px;
}

#nav #nav_cont #nav_menu ul li {
 display:flex;
 justify-content:center;
 width:calc(100% / 3 - 20px);
}

#nav #nav_cont #nav_menu ul li a {
 display:flex;
 justify-content: center;
 width:100%;
}

#nav #nav_cont #nav_menu ul li a dl {
 align-items:center;
 display:flex;
 flex-direction:column;
 justify-content:center;
 width:100%;
}

#nav #nav_cont #nav_menu ul li a dl dt {
 align-items: center;
 align-content: center;
 background-color: var(--white);
 border-radius: 50%;
 border:5px solid var(--gray_eb);
 display: flex;
 justify-content: center;
 height: 23vw;
 width: 23vw;
}

#nav #nav_cont #nav_menu ul li a dl dt img {
 height:7vw;
 opacity:0;
 -webkit-transition:opacity 3s;
 transition: opacity 3s;
 width:auto;
}

#nav #nav_cont #nav_menu ul li a dl dt img.lazyloaded {
 opacity:1;
}

#nav #nav_cont #nav_menu ul li:first-child a dl dt img {
 height:10vw;
}

#nav #nav_cont #nav_menu ul li:nth-child(3) a dl dt img {
 height:10vw;
}

#nav #nav_cont #nav_menu ul li:nth-child(5) a dl dt img {
 height:4vw;
}

#nav #nav_cont #nav_menu ul li a dl dd {
 font-size: calc(1.6rem + ((1vw - 0.48rem) * 0.6944));
 font-weight:600;
 margin-top:20px;
 text-align:center;
}

#nav #nav_cont .banner {
 background-color:var(--pale_gray);
 display: flex;
 justify-content: center;
 padding:3vw 5vw 5vw;
}

#nav #nav_cont .banner img {
 position: relative;
 width: 100%;
 height: auto;
 object-fit: cover;
 max-width:400px;
}

#nav #nav_cont #nav_link {
 flex-direction:column;
 display:flex;
 justify-content:start;
}

#nav #nav_cont #nav_link h3 {
 background-color:var(--sub);
 color:var(--white);
 font-size: calc(1.5rem + ((1vw - 0.48rem) * 0.6944));
 font-weight:600;
 line-height:1.2;
 padding:15px;
}

#nav #nav_cont #nav_link ul {
 display: flex;
 flex-direction:column;
 justify-content: space-between;
}

#nav #nav_cont #nav_link ul li {
 border-bottom:1px solid var(--gray_eb);
}

#nav #nav_cont #nav_link ul li a {
 display: flex;
 padding:15px;
 position:relative;
}

#nav #nav_cont #nav_link ul li a:after {
 content:"\f054";
 color:var(--gray_cc);
 font-family:var(--icon);
 font-size: calc(1.4rem + ((1vw - 0.48rem) * 0.6944));
 right:20px;
 top:50%;
 margin-top:-7px;
 position:absolute;
 z-index:3; 
}

#nav #nav_cont #nav_link ul li dl {
 display: flex;
 justify-content: start;
 width:100%;
}

#nav #nav_cont #nav_link ul li dl dt {
 overflow:hidden;
}

#nav #nav_cont #nav_link ul li dl dt img {
 border-radius:6px;
 height:100px;
 object-fit:cover;
 opacity:0;
 -webkit-transition:opacity 3s;
 transition: opacity 3s;
 width:100px;
}

#nav #nav_cont #nav_link ul li dl dt img.lazyloaded {
 opacity:1;
}

#nav #nav_cont #nav_link ul li:first-child dl dt img,
#nav #nav_cont #nav_link ul li:nth-child(2) dl dt img,
#nav #nav_cont #nav_link ul li:nth-child(3) dl dt img,
#nav #nav_cont #nav_link ul li:nth-child(6) dl dt img {
 object-fit:contain;
}

#nav #nav_cont #nav_link ul li:nth-child(4) dl dt img {
 object-position:center left;
}

#nav #nav_cont #nav_link ul li dl dd {
 align-items:center;
 align-content:center;
 display:flex;
 font-size: calc(1.5rem + ((1vw - 0.48rem) * 0.6944));
 flex:1;
 justify-content:start;
 line-height:1.6;
 padding:20px;
}

/*---------------------------------------------
nav_conversion
---------------------------------------------*/
#nav_conversion {
 display:flex;
 flex-direction:column;
 justify-content:center;
 padding:30px 20px;
}

#nav_conversion ul {
 align-items:center;
 display:flex;
 flex-direction:column;
 justify-content:center;
 row-gap:30px;
}

#nav_conversion ul li.entry {

}

#nav_conversion ul li.entry dl {
 display:flex;
 flex-direction:column;
 justify-content:center;
 row-gap:10px;
}

#nav_conversion ul li.entry dl dt {
 font-size: calc(1.3rem + ((1vw - 0.48rem) * 0.6944)); 
 text-align:center;
}


#nav_conversion ul li.entry dl dd {

}

#nav_conversion ul li.entry dl dd a {
 align-items:center;
 background-color:var(--green);
 border-radius:30px;
 border:1px solid var(--green);
 color:var(--white);
 display:flex;
 font-size:1.5rem;
 font-weight:600;
 justify-content:center;
 letter-spacing:-0.05em;
 padding:20px 10px 20px 0;
 position:relative;
 white-space: nowrap; 
 min-width:280px;
}

#nav_conversion ul li.entry dl dd a:after {
 content:"\f054";
 color:var(--white);
 font-family:var(--icon);
 font-size: 1.0rem;
 font-weight:600;
 right:15px;
 top:50%;
 margin-top:-6px;
 opacity:0.7;
 position:absolute;
 z-index:3;
}

#nav_conversion .tel {
 align-items:center;
 display:flex;
 flex-direction:column;
 row-gap:10px;
 justify-content:center;
}

#nav_conversion .tel > dl {
 display:flex;
 flex-direction:column;
 row-gap:10px;
 max-width:300px;
}

#nav_conversion .tel > dl > dt {
 align-items:center;
 /*background-color:var(--dark_black);*/
 background-color:var(--sub);
 border-radius:20px;
 color:var(--white);
 display:flex;
 justify-content:center;
 font-size:1.3rem;
 font-weight:600;
 line-height:1;
 padding:6px 10px;
 text-align:center;
}

#nav_conversion .tel > dl > dd a {
 align-items:center;
 display:flex;
 justify-content:center;
}

#nav_conversion .tel > dl > dd a img {
 width: 100%;
 height: 100%;
 aspect-ratio: 261 / 27;
 opacity:0;
 -webkit-transition:opacity 3s;
 transition: opacity 3s;
}

#nav_conversion .tel > dl > dd a img.lazyloaded {
 opacity:1;
}

#nav_conversion .tel > dl > dd a:hover img {
 opacity:0.7;
}

#nav_conversion .tel .open_hour {
 align-items:center;
 column-gap:5px;
 display:flex;
 justify-content:start;
}

#nav_conversion .tel .open_hour > p {
background-color: var(--sub);
border-radius: 15px;
color: var(--white);
font-weight: 600;
font-size: 1.1rem;
line-height: 1.6;
padding: 2px 8px;
}

#nav_conversion .tel .open_hour ul {
 display:flex;
 flex-direction:column;
 flex-grow:1;
 row-gap:10px;
}

#nav_conversion .tel .open_hour ul li {

}

#nav_conversion .tel .open_hour dl {
 align-items:center;
 column-gap:5px;
 display:flex;
 justify-content:start;
}

#nav_conversion .tel .open_hour dl dt {
 font-size: 1.3rem;
 line-height:1.6;
 padding:0px;
 white-space: nowrap;
 min-width:50px;
}

#nav_conversion .tel .open_hour dl dd {
 letter-spacing:-0.03em;
 line-height:1.6;
 white-space: nowrap;
}

#nav_conversion .tel .open_hour dl dd span:first-child {
 font-size: 1.5rem;
 font-family: Arial;
 font-weight:600;
 line-height:1.6;
 letter-spacing:-0.01em;
}

#nav_conversion .tel .open_hour dl dd span:nth-child(2) {
 font-size: 1.1rem;
 line-height:1.6;
 letter-spacing:-0.03em;
}

/*---------------------------------------------
nav_footer
---------------------------------------------*/
#nav_footer {
 background-color: var(--pale_gray);
 padding-top:30px;
}

#nav_footer ul {
 border-top: 1px solid var(--gray_eb);
 display:flex;
 flex-direction:column;
}

#nav_footer ul li {
 border-bottom: 1px solid var(--gray_eb);
}

#nav_footer ul li a {
 align-items:center;
 align-content:center;
 background-color: var(--white);
 display:flex;
 font-size: calc(1.4rem + ((1vw - 0.48rem) * 0.6944));
 justify-content:start;
 padding:25px 20px;
 position:relative;
}

#nav_footer ul li a:after {
 content:"\f054";
 color:var(--gray_cc);
 font-family:var(--icon);
 font-size: calc(1.4rem + ((1vw - 0.48rem) * 0.6944));
 right:20px;
 top:50%;
 margin-top:-7px;
 position:absolute;
 z-index:3; 
}

#nav_footer p {
 display: flex;
 font-size: calc(1.1rem + ((1vw - 0.48rem) * 0.6944));
 justify-content: start;
 line-height:1.6;
 padding:25px 20px;
}

#nav_footer .copyright {
 color:var(--gray_cc);
 font-size: calc(1.0rem + ((1vw - 0.48rem) * 0.6944));
 display: flex;
 justify-content: start;
 padding:25px 20px;
}

/*---------------------------------------------
close_btn
---------------------------------------------*/
.menu_close {
 display:flex;
 justify-content:center;
 padding:0;
 position:fixed;
 bottom:15px;
 right:15px;
}

.menu_close a {
 align-items:center;
 align-content:center;
 background-color:var(--sub);
 border-radius:30px;
 color:var(--white);
 display:flex;
 font-weight:600;
 justify-content:center;
 padding:15px 25px 15px 40px; 
 position:relative;
 width:100%;
}

.menu_close a span {
 font-size: calc(1.4rem + ((1vw - 0.48rem) * 0.6944));
}

.menu_close a i {
 color:var(--gray_cc);
 font-size: calc(1.5rem + ((1vw - 0.48rem) * 0.6944));
 margin-top:-7px;
 position:absolute;
 left:20px;
 top:50%;
}

/*---------------------------------------------
table_list
---------------------------------------------*/
.table_list_a ul {
 border-bottom:1px solid var(--gray_cc);
 display:flex;
 flex-direction:column;
 justify-content:space-between;
}

.table_list_a ul li {
 font-size:1.6rem;
 line-height:1.6;
 width:100%;
}

.table_list_a ul li dl {
 border-top:1px solid var(--gray_cc);
 border-left:1px solid var(--gray_cc);
 display:flex;
}

.table_list_a ul li dl dt {
 border-right:1px solid var(--gray_cc);
 font-size: 1.4rem;
 font-weight:600;
 line-height:1.6;
 padding:15px;
 width:30%;
}

.table_list_a ul li dl dd {
 border-right:1px solid var(--gray_cc);
 flex:1;
 font-size: 1.4rem;
 line-height:1.6;
 padding:15px;
}

/*---------------------------------------------
bread_crumb_list
---------------------------------------------*/
.bread_crumb_list {
 background-color:var(--white);
 border-top:1px solid var(--gray_dd);
 border-bottom:1px solid var(--gray_dd);
 display:flex;
 flex-wrap:wrap;
 justify-content:center;
 flex:0 0 100%;
 margin:0;
 padding:0 5vw;
 padding-left:310px;
}
.bread_crumb_list .bread_crumb_list_cont { display:flex; flex-wrap:wrap; justify-content:start; flex:1; position:relative; }
.bread_crumb_list .bread_crumb_list_cont ol { display:flex; justify-content:start; padding:30px 0; }
.bread_crumb_list .bread_crumb_list_cont ol li { align-items:center; display:flex; justify-content:start; }
.bread_crumb_list .bread_crumb_list_cont ol li i { color:var(--gray_99); font-size:1rem; padding-left:15px; }
.bread_crumb_list .bread_crumb_list_cont ol li > span { font-size:1.3rem; margin-left:15px; }
.bread_crumb_list .bread_crumb_list_cont ol li a { align-items:center; display:flex; justify-content:start; }
.bread_crumb_list .bread_crumb_list_cont ol li a span { font-size:1.3rem; padding-left:15px; }
.bread_crumb_list .bread_crumb_list_cont ol li a i { color:var(gray_99); font-size:1.2rem; }
.bread_crumb_list .bread_crumb_list_cont ol li a:hover span,
.bread_crumb_list .bread_crumb_list_cont ol li a:hover i { color:var(--group); }

.bread_crumb_list .bread_crumb_list_cont ol li.home {}
.bread_crumb_list .bread_crumb_list_cont ol li.home a {}
.bread_crumb_list .bread_crumb_list_cont ol li.home a span {}
.bread_crumb_list .bread_crumb_list_cont ol li.home p i,
.bread_crumb_list .bread_crumb_list_cont ol li.home a i { padding-left:0; }
.bread_crumb_list .bread_crumb_list_cont ol li.home a:hover { text-decoration:none; }

.bread_crumb_list .bread_crumb_list_cont ol li p i { color:var(gray_99); font-size:1.2rem; }
.bread_crumb_list .bread_crumb_list_cont ol li p span { font-size:1.3rem; padding-left:15px; }

/*---------------------------------------------
menu_link
---------------------------------------------*/
.menu_link {
 padding:0;
 display:flex;
 justify-content:center;
}

.menu_link ul {
 border-top:1px solid var(--gray_dd);
 border-left:1px solid var(--gray_dd);
 border-radius:6px;
 display:flex;
 flex:0 0 100%;
 flex-wrap:wrap;
}

.menu_link ul li {
align-items:center;
align-content:center;
display:flex;
border-right:1px solid var(--gray_dd);
border-bottom:1px solid var(--gray_dd);
flex:1;
}

.menu_link ul li a {
 align-items:center;
 align-content:center;
 background-color:var(--white);
 display:flex;
 flex:1;
 font-size: calc(1.4rem + ((1vw - 0.48rem) * 0.6944));
 height:100%;
 line-height:1.4;
 padding:25px 25px;
 position:relative;
}

.menu_link ul li a:hover {
 background-color:var(--light_blue);
}

.menu_link ul li a:after {
 content:"\f054";
 color:var(--gray_dd);
 font-family:var(--icon);
 font-weight:600;
 right:20px;
 top:50%;
 margin-top:-8px;
 position:absolute;
 font-size:1rem;
 z-index:3;
}

.menu_link ul li:first-child, 
.menu_link ul li:first-child a {
 border-radius:6px 0 0 6px;
}

.menu_link ul li:last-child,
.menu_link ul li:last-child a {
 border-radius:0 6px 6px 0;
}

.menu_link ul li a:hover:after {
 color:var(--blue);
}

/*---------------------------------------------
footer
---------------------------------------------*/
#footer {
 background-color:var(--white);
 display:flex;
 flex-direction:column;
}

#footer #footer_cont {
 display:flex;
 flex-direction:column;
}

#footer #footer_cont #footer_head {
 align-items:center;
 display:flex;
 flex-direction:column;
 justify-content:center; 
 padding:50px 50px 50px 310px;
 row-gap:50px;
}

#footer #footer_cont #footer_head .conversion {
 /*max-width:900px;*/
 width:100%;
}

#footer #footer_cont #footer_head #footer_head_cont {
 background-color:var(--white);
 column-gap:30px;
 display:flex;
 flex-wrap:wrap;
 justify-content:center;
 padding:0;
 row-gap:30px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left {
 column-gap:30px;
 display:flex;
 flex:1 1 auto;
 row-gap:20px;
 width:calc(100% / 2 + 90px);
 min-width:500px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .gmap {
 min-width:180px;
 max-width:400px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .gmap iframe {
 aspect-ratio: 1 / 1;
 max-width:400px;
 width:100%;
 height:auto;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .info {
 display:flex;
 flex-direction:column;
 row-gap:15px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .info > img {
 width:140px;
 height:auto;
 opacity:0;
 -webkit-transition:opacity 3s;
 transition: opacity 3s;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .info > img.lazyloaded {
 opacity:1;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .info .address {
 display:flex;
 flex-direction:column;
 row-gap:10px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .info .address dl {
 display:flex;
 flex-direction:column;
 row-gap:10px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .info .address dl dt {
 font-size:1.2rem;
 line-height:1.6;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_left .info .address dl dd {
 font-size:1.1rem;
 line-height:1.6;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right {
 display:flex;
 flex-direction:column;
 flex:1 1 auto;
 row-gap:20px;
 width:calc(100% / 2 - 120px);
 max-width:300px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel {
 display:flex;
 flex-direction:column;
 row-gap:10px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel > dl {
 display:flex;
 flex-direction:column;
 row-gap:10px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel > dl > dt {
 align-items:center;
 background-color:var(--sub);
 border-radius:20px;
 color:var(--white);
 display:flex;
 justify-content:center;
 font-size:1.3rem;
 font-weight:600;
 line-height:1.6;
 padding:6px 10px;
 text-align:center;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel > dl > dd a {
 align-items:center;
 display:flex;
 justify-content:center;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel > dl > dd a img {
 width: 100%;
 height: 100%;
 aspect-ratio: 261 / 27;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel > dl > dd a:hover img {
 opacity:0.7;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour {
 align-items:center;
 column-gap:5px;
 display:flex;
 justify-content:center;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour > p {
 background-color:var(--sub);
 border-radius:15px;
 color:var(--white);
 font-weight:600;
 font-size: 1.1rem;
 line-height:1.6;
 padding:2px 8px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour ul {
 display:flex;
 flex-direction:column;
 /*flex-grow:1;*/
 row-gap:10px;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour ul li {

}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour ul li dl {
 align-items:center;
 column-gap:3px;
 display:flex;
 justify-content:start;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour ul li dl dt {
 font-size: 1.3rem;
 padding:3px;
 white-space: nowrap;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour ul li dl dd {
 letter-spacing:-0.03em;
 line-height:1.6;
 white-space: nowrap;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour ul li dl dd span:first-child {
 font-size: 1.5rem;
 font-family: Arial;
 font-weight:600;
 letter-spacing:-0.01em;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right .tel .open_hour ul li dl dd span:nth-child(2) {
 font-size: 1.1rem;
 letter-spacing:-0.03em;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right ul {
 column-gap:20px;
 display:flex;
 justify-content:space-between;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right ul li {
width:calc(100% / 2 - 10px);
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right ul li a {
 border:1px solid var(--gray_cc);
 border-radius:25px;
 display:flex;
 font-size:1.3rem;
 justify-content:center;
 padding:15px 40px;
 position:relative;
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right ul li a:after {
 content:"\f054";
 color:var(--gray_cc);
 font-family:var(--icon);
 font-size: 1.0rem;
 right:15px;
 top:50%;
 margin-top:-5px;
 position:absolute;
 z-index:3; 
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right ul li a:hover {
 color:var(--sub);
 border:1px solid var(--sub);
}

#footer #footer_cont #footer_head #footer_head_cont #footer_head_cont_right ul li a:hover:after {
 color:var(--sub);
}

/*--- footer_bottom ---*/

#footer #footer_bottom {
 /*background-color:var(--yellow);*/
 background-color:var(--white);
 border-top:1px solid var(--gray_dd);
 display:flex;
 flex-direction:column;
 padding:80px 0;
}

#footer #footer_bottom #footer_bottom_cont {
 display:flex;
 flex-direction:column;
 padding-right:calc(310px);
 padding-left:calc(310px);
 row-gap:60px;
}

#footer #footer_bottom #footer_bottom_cont h2 {
 display:flex;
 font-size:2.2rem;
 font-weight:600;
 justify-content:center;
 padding:0;
}

#footer #footer_bottom #footer_bottom_logo {
 align-items:center;
 display: flex;
 justify-content: center;
 flex-direction:column;
 row-gap:20px;
}

#footer #footer_bottom #footer_bottom_logo img {
 position: relative;
 width: 100%;
 height: auto;
 object-fit: cover;
 opacity:0;
 -webkit-transition:opacity 3s;
 transition: opacity 3s;
 max-width:200px;
}

#footer #footer_bottom #footer_bottom_logo img.lazyloaded {
 opacity:1;
}

#footer #footer_bottom #footer_bottom_logo h3 {
 display:flex;
 font-size:2.0rem;
 font-weight:600;
 justify-content:center;
 padding:0;
 text-align:center;
}

#footer #footer_bottom #footer_bottom_cont h4 {
 font-size:1.5rem;
 line-height:1.8; 
}

#footer #footer_bottom .footer_sub_link ul {
 column-gap:0;
 display:flex;
 flex:0 0 100%;
 flex-wrap:wrap;
 justify-content:center;
 width:100%;
}

#footer #footer_bottom .footer_sub_link ul li {
 display:flex;
 justify-content:center;
}

#footer #footer_bottom .footer_sub_link ul li a {
 display:flex;
 flex:0 0 100%;
 font-size:1.3rem;
 justify-content:center;
 padding:0 20px;
 position:relative;
}

#footer #footer_bottom .footer_sub_link ul li a:after {
 background-color:var(--black);
 content:" ";
 height:15px;
 width:1px;
 position:absolute;
 right:0;
 bottom:0;
}

#footer #footer_bottom .footer_sub_link ul li:first-child a:before {
 background-color:var(--black);
 content:" ";
 height:15px;
 width:1px;
 position:absolute;
 left:0;
 bottom:0;
}

#footer #footer_bottom .footer_sub_link ul li a:hover {
 cursor:pointer;
 color:var(--orange);
}


/*--- sns_list ---*/

.sns_list {
 flex:0 0 100%;
 padding:0;
}

.sns_list ul {
 column-gap:40px;
 display:flex;
 justify-content:center;
}

.sns_list ul li a img {
 height:26px;
 width:auto;
}

.sns_list ul li a:hover img {
 opacity:0.7;
}

/*--- copyright ---*/

#footer #copyright {
 background-color:var(--gray_f2);
 display:flex;
 justify-content:center;
 padding:30px 5vw;
}


/*---------------------------------------------
conversion
---------------------------------------------*/
.conversion {
 align-items:center;
 background-color:transparent;
 display:flex;
 flex-direction:column;
 justify-content:center;

 overflow:hidden;
}

.conversion .conversion_cont {
 align-items:center;
 background-color:var(--yellow);
 background-image:url(../img/paperdriver/i_conversion_mark.png);
 background-position:5% -30px;
 background-size:258px 360px;
 background-repeat:no-repeat;
 border-radius:20px;
 box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
 display:flex;
 flex-direction:column;
 justify-content:center;
 padding: 40px 50px;
 position:relative;
 row-gap:30px;
 max-width:980px;
 width:100%;
 z-index:1;
}

.conversion .conversion_cont h2 {
 font-size: 2.2rem;
 font-weight:600;
 line-height:1.4; 
}

.conversion .conversion_cont figure {
 width:auto;
 width:20vw;
 aspect-ratio: 400 / 561;
 position:absolute;
 right:20px;
 bottom:0;
 max-width:150px;
 z-index:2;
}

.conversion .conversion_cont figure img {
 opacity:0;
 -webkit-transition:opacity 3s;
 transition: opacity 3s;
 object-fit: cover;
 aspect-ratio: 3 / 4;
 width:100%;
 height:100%;
 position:absolute;
 right:0;
 bottom:0;
}

.conversion .conversion_cont figure img.lazyloaded {
 opacity:1;
}

.conversion .conversion_cont ul {
 align-items:start;
 background-color:var(--white);
 border-radius:10px;
 column-gap:50px;
 display:flex;
 justify-content:center;
 padding:35px 130px 35px 35px;
 width:100%; 
}

.conversion .conversion_cont ul li {
 align-items:start;
 display:flex;
 flex-direction:column;
 justify-content:center;
 row-gap:10px;
}

.conversion .conversion_cont ul li > dl {
 display:flex;
 flex-direction:column;
 justify-content:center;
 row-gap:15px;
}

.conversion .conversion_cont ul li:first-child > dl {
 row-gap:18px; 
}

.conversion .conversion_cont ul li > dl > dt {
 background-color:var(--gray_ee);
 border-radius:15px;
 color:var(--black);
 font-size: 1.4rem;
 font-weight:600;
 padding:5px 15px;
 text-align:center;
 position:relative;
}

.conversion .conversion_cont ul li > dl > dt:after {
 background-color:var(--gray_ee);
 width: 20px;
 height: 16px;
 content:" ";
 clip-path: polygon(0 0, 100% 0%, 50% 100%);
 position:absolute;
 left:50%;
 margin-left:-10px;
 bottom:-10px;
}

.conversion .conversion_cont ul li > dl > dd {
 display:flex;
 flex-direction:column;
 justify-content:center;
 row-gap:5px;
}

.conversion .conversion_cont ul li .open_hour {
 align-items:center;
 column-gap:10px;
 display:flex;
 justify-content:center;
 width:100%;
}

.conversion .conversion_cont ul li .open_hour p {
 align-items:center;
 background-color:var(--dark_black);
 border-radius:20px;
 color:var(--white);
 display:flex;
 justify-content:center;
 font-size:1.2rem;
 font-weight:600;
 line-height:1;
 padding:5px 10px;
 text-align:center;
}

.conversion .conversion_cont ul li .open_hour dl {
 column-gap:5px;
 display:flex;
 justify-content:center;
}

.conversion .conversion_cont ul li .open_hour dl dt {
 font-size: 1.4rem;
}

.conversion .conversion_cont ul li .open_hour dl dd {
 font-size: 1.4rem;
}

.conversion .conversion_cont ul li.entry > dl > dd a {
 align-items:center;
 background-color:var(--green);
 border-radius:30px;
 border:1px solid var(--green);
 color:var(--white);
 display:flex;
 font-size:1.5rem;
 font-weight:600;
 justify-content:center;
 letter-spacing:-0.05em;
 padding:20px 10px 20px 0;
 position:relative;
 white-space: nowrap; 
}

.conversion .conversion_cont ul li.entry > dl > dd a:after {
 content:"\f054";
 color:var(--white);
 font-family:var(--icon);
 font-size: 1.0rem;
 font-weight:600;
 right:15px;
 top:50%;
 margin-top:-6px;
 opacity:0.7;
 position:absolute;
 z-index:3;
}

.conversion .conversion_cont ul li.entry > dl > dd a:hover {
 background-color:var(--green);
 opacity:0.7;
}

.conversion .conversion_cont ul li.entry {
 min-width:280px;
}

.conversion .conversion_cont ul li.entry > a {
 align-items:center;
 background-color:var(--green);
 border-radius:30px;
 border:1px solid var(--green);
 color:var(--white);
 display:flex;
 font-size:1.5rem;
 font-weight:600;
 justify-content:center;
 letter-spacing:-0.05em;
 padding:20px 10px 20px 0;
 position:relative;
 white-space: nowrap; 
 width:100%;
}

.conversion .conversion_cont ul li.entry > a:after {
 content:"\f054";
 color:var(--white);
 font-family:var(--icon);
 font-size: 1.0rem;
 font-weight:600;
 right:15px;
 top:50%;
 margin-top:-6px;
 opacity:0.7;
 position:absolute;
 z-index:3;
}

/*---------------------------------------------
normal_table
---------------------------------------------*/