@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Old+Mincho:wght@400;700;900&display=swap');
html {
	-webkit-text-size-adjust: 100%;
}
html.close {
	overflow:hidden;
	height:100%;
}
body {
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  font-family: "Noto Sans JP", sans-serif;
  font-size:20px;
  color:#333;
  line-height:1.75;
  text-align:center;
  font-feature-settings: "palt";
}

@media screen and (max-width:1024px){
  body {
    font-size:2vw;
  }
}

@media screen and (max-width:750px){
  body {
    font-size:3.6vw;
  }
}

.mincho{
  font-family: "Zen Old Mincho", serif;
}
.gothic{
  font-family: "Noto Sans JP", sans-serif;
}

a,
button{
  -webkit-transition : opacity 0.4s;
  transition : opacity 0.4s;
  opacity:1;
  outline:none;
  color:#313131;
  cursor:pointer;
}
a:hover,
button:hover{
  opacity: 0.8;
}

img{
  max-width:100%;
}

.only_smart,
.only_smart_i,
.only_smart_f{
  display:none !important;
}
@media screen and (max-width:750px){
  .only_pc{
    display:none !important;
  }
  
  .only_smart{
    display:block !important;
  }
  .only_smart_i{
    display:inline-block !important;
  }
  .only_smart_f{
    display: -webkit-flex!important;
    display: flex!important;
  }
}


/* 色関係 */
.red{
  color:#cb2318;
}
.bg_red{
  color:#fff !important;
  background-color:#cb2318;
}
.bg_pink{
  background-color:rgba(203,35,24,0.2);
}

.bg_green{
  background-color:#06c755;
}
.wine{
  color:#821109;
}
.bg_wine{
  color:#fff;
  background-color:#821109;
}
.bg_blue{
  color:#fff;
  background-color:#087e9e;
}
.bg_navy{
  color:#fff;
  background-color:#023e62;
}
.bg_black{
  color:#fff;
  background-color:#333;
}


/* 書式 */
.text_left{
  text-align:left !important;
}
.text_right{
  text-align:right !important;
}
.text_center{
  text-align:center !important;
}
.bold{
  font-weight:bold;
}
.black{
  font-weight:900;
}


#wrapper{
}

.inner{
  max-width:960px;
  width:94%;
  margin:auto;
}


/* header */
header{
  width:100%;
  position:fixed;
  top:0;
  left:0;
  z-index:100;
  background-color:#fff;
  box-shadow:0 0 5px rgba(0,0,0,0.5);
}
header > .inner{
  max-width:1280px;
  height:120px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}
header > .inner .head_logo{
  display:block;
  text-align:left;
}
header > .inner .head_logo .pr{
  display:block;
  margin-bottom:0.3em;
  font-size:18px;
  font-weight:500;
  letter-spacing:0.05em;
  white-space:nowrap;
}
header > .inner .head_logo img{
  font-size:300px;
}

header > .inner .head_link{
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
}
header > .inner .head_link .tel a{
  display:block;
  font-size:36px;
  font-weight:bold;
  line-height:0;
  text-align:left;
  white-space:nowrap;
}
header > .inner .head_link .tel a img{
  width:1.1em;
  margin-right:-0.1em;
  vertical-align:-0.2em;
}
header > .inner .head_link .tel a .num .hyphen{
  display:inline-block;
  vertical-align:0.15em;
}
header > .inner .head_link .tel a p{
  line-height:1.3;
  margin-top:0.6em;
  font-size:16px;
}
header > .inner .head_link .tel a p .red{
  display:inline-block;
  padding:0 0.3em 0.1em;
  border:1px solid;
}
header > .inner .btn{
  margin:0 0.3em;
}
header > .inner .btn ul{
  display: -webkit-flex;
  display: flex;
}
header > .inner .btn ul li{
  margin:0 0.2em;
}
header > .inner .btn ul li a{
  width:15em;
  padding:0.3em 0.5em 0.3em 2.1em;
  line-height:1.3;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  -webkit-align-items: center;
  align-items: center;
  font-size:20px;
  font-weight:bold;
  color:#fff;
  border-radius:0.3em;
  box-shadow:0 -2px 0 inset rgba(0,0,0,0.4);
  position: relative;
}
header > .inner .btn ul li a:after{
  content:'';
  display:block;
  width:0.5em;
  height:0.5em;
  border-top:3px solid;
  border-right:3px solid;
  transform:rotate(45deg);
}
header > .inner .btn ul li a img{
  width:64px;
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-35%, -25%);
}
header > .inner .btn ul li a .large{
  font-size:24px;
}
.head_link_mail_txt{
  line-height: 2;
}
.btn-sp{
  display: none;
}
@media screen and (max-width:1300px){
  header > .inner{
    height:90px;
  }
  header > .inner .head_logo .pr{
    font-size:14px;
  }
  header > .inner .head_logo img{
    width:225px;
  }

  header > .inner .head_link .tel a{
    font-size:27px;
  }
  header > .inner .head_link .tel a p{
    font-size:12px;
  }
  header > .inner .btn ul li a{
    font-size:15px;
    box-shadow:0 -2px 0 inset rgba(0,0,0,0.4);
  }
  header > .inner .btn ul li a:after{
    border-top:3px solid;
    border-right:3px solid;
  }
  header > .inner .btn ul li a img{
    width:48px;
  }
  header > .inner .btn ul li a div{
    white-space:nowrap;
  }
  header > .inner .btn ul li a div .large{
    font-size:18px;
  }
}

@media screen and (max-width:1024px){
  header > .inner .btn ul li a img {
    position: relative;
    transform: none;
}
  header > .inner .btn{
    margin:0;
    position:fixed;
    right:-200px;
    top:100px;
    -webkit-transition : right 0.4s;
    transition : right 0.4s;
  }
  header > .inner .btn ul{
    display: block;
  }
  header > .inner .btn ul li{
    margin:0 0 0.5em;
  }
  header > .inner .btn ul li.line{
    margin:0;
  }
  header > .inner .btn ul li a{
    width:4em;
    padding:0.5em 0 0.8em;
    line-height:1.3;
    border-radius:0.3em;
    box-shadow:none;
    writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  header > .inner .btn ul li a:after{
    margin-top:0.3em;
    transform:rotate(135deg);
  }
  header > .inner .btn ul li.mail a img{
    margin-bottom:0.3em;
  }
  header > .inner .btn ul li a div{
    line-height:1.2;
    text-align:left;
  }
  header > .inner .btn ul li a div .last{
    display:none;
  }
}

@media screen and (max-width:750px){
  header > .inner{
    height:60px;
  }
  header > .inner .head_logo img{
    width:190px;
  }
  header > .inner .head_link .tel{
    margin-right:3%;
  }
  header > .inner .head_link .tel a img{
    width:40px;
  }
  header > .inner .btn{
    width:100%;
    margin:0;
    top:auto;
    bottom:-200px;
		right:0;
    background-color:rgba(0,0,0,0.5);
    -webkit-transition : bottom 0.4s;
    transition : bottom 0.4s;
  }
  header > .inner .btn ul{
    display: -webkit-flex;
    display: flex;
  }
  header > .inner .btn ul li{
    width: 72%;
    margin: 0 auto;
    padding:0.3em;
  }
  header > .inner .btn ul li a{
    width:100%;
    height:100%;
    padding:0.3em 0.5em;
    line-height:1.3;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    -webkit-align-items: center;
    align-items: center;
    font-size:4vw;
    text-align:center;
    border-radius:0.3em;
    box-shadow:0 -2px 0 inset rgba(0,0,0,0.4);
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    -webkit-text-orientation: unset;
    text-orientation: unset;
  }
  header > .inner .btn ul li a:after{
    content:'';
    display:block;
    width:0.6em;
    height:0.6em;
    border-top:0.7vw solid;
    border-right:0.7vw solid;
    transform:rotate(45deg);
  }
  header > .inner .btn ul li a img{
    width:3em;
  }
  header > .inner .btn ul li.mail a img{
    margin-bottom:0;
  }
  header > .inner .btn ul li a div{
    line-height:2;
    text-align:center;
  }
  header > .inner .btn ul li a div .large{
    font-size:4.9vw;
  }
  header > .inner .btn ul li a div .last{
    display:inline;
  }
  header > .inner .btn ul li a img {
    position: relative;
    transform: none;
}
.btn-sp{
  display: block;
}
.btn-sp .small{
  font-size: 0.6rem;
}
.btn-sp a{
  display: block;
  background-color:#cb2318;
  box-shadow: 0 -2px 0 inset rgba(0, 0, 0, 0.4);
  padding: 1em 2em 1em 1.5em;
  line-height: 1.3;
  align-items: center;
  font-size: 0.7rem;
  font-weight: bold;
  text-align: center;
  border-radius: 0.3em;
}
.btn-sp a:after {
        content: '';
        display: block;
        width: 0.5em;
        height: 0.5em;
        border-top: 2px solid;
        border-right: 2px solid;
        position: absolute;
        right: 4.5rem;
        top: 51%;
        transform: translateY(-50%) rotate(45deg);
    }
}

@media screen and (max-width:410px){
  .btn-sp a{
  padding: 1em 1.5em 1em 1em;
}
.btn-sp a:after {
        right: 4.2rem;
    }
}
@media screen and (max-width:390px){
  .btn-sp a{
  font-size: 0.6rem;
}
.btn-sp .small{
  font-size: 0.5rem;
}
}


/* #btnmenu */
#btnmenu{
	width:70px;
	height:50px;
	margin:0;
	padding:0;
	position:relative;
	z-index:101;
	cursor:pointer;
}
#btnmenu:after{
  content:'メニュー';
  display:block;
  width:100%;
  font-size:16px;
  font-weight:bold;
  color:#821109;
  position:absolute;
  bottom:-0.5em;
}
#btnmenu span{
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 40px;
	height: 5px;
	border-radius:0px;
	margin: -2px 0 0 -20px;
	background: transparent;
	-webkit-transition: .2s;
	transition: .2s;
}
#btnmenu span:before,
#btnmenu span:after{
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 40px;
	height: 5px;
	background: #821109;
	border-radius:0px;
	-webkit-transition: .3s;
	transition: .3s;
}

#btnmenu span:before{
	margin-top: -15px;
}

#btnmenu span:after{
	margin-top: 0px;
}
#btnmenu.close span{
	width:70px;
	height:50px;
	margin-top:-25px;
	margin-left:-35px;
	box-shadow:none;
	background-color:transparent;
	border-radius:0;
}

#btnmenu.close span:before,
#btnmenu.close span:after{
	margin-top: 0;
	background-color:#821109;
}

#btnmenu.close span:before{
	width: 40px;
	height: 5px;
	margin: -10px 0 0 15px;
	border-radius:0px;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
#btnmenu.close span:after{
	width: 40px;
	height: 5px;
	margin: -10px 0 0 15px;
	border-radius:0px;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

@media screen and (max-width:750px){
  #btnmenu{
    width:50px;
    height:40px;
  }
  #btnmenu:after{
    font-size:13px;
    font-weight:bold;
  }
  #btnmenu span{
    width: 30px;
    height: 4px;
    margin: -2px 0 0 -15px;
  }
  #btnmenu span:before,
  #btnmenu span:after{
    width: 30px;
    height: 4px;
  }
  #btnmenu span:before{
    margin-top: -12px;
  }
  #btnmenu.close span:before{
    width: 30px;
    height: 4px;
    margin: -7px 0 0 20px;
  }
  #btnmenu.close span:after{
    width: 30px;
    height: 4px;
    margin: -7px 0 0 20px;
  }
}


/* #nav */
#nav{
  width:100%;
  height:calc(100vh - 120px);
  padding:50px 0 100px;
  background-color:rgba(255,255,255,0.95);
  overflow:auto;
  position:fixed;
  top:120px;
  left:0;
  z-index:101;
  display:none;
  box-shadow:0 5px 3px -3px rgba(0,0,0,0.3) inset;
}
#nav .inner{
  max-width:900px;
}
#nav .flex{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#nav .flex > ul{
  width:48%;
}
#nav .flex > ul li a{
  display:block;
  padding-left:1em;
  line-height:3.4;
  font-size:24px;
  font-weight:bold;
  text-align:left;
  border-bottom:1px solid #bbbbba;
  position:relative;
  -webkit-transition : color 0.4s;
  transition : color 0.4s;
}
#nav .flex > ul li a:hover{
  color:#cb2318;
  opacity:1;
}
#nav .flex > ul li .bg_red,
#nav .flex > ul li .bg_pink{
  border-bottom:1px solid #fff;
}
#nav .flex > ul li a:after{
  content:'';
  display:block;
  width:0.5em;
  height:0.5em;
  border-top:3px solid #cb2318;
  border-right:3px solid #cb2318;
  position:absolute;
  right:1em;
  top:50%;
  transform:translateY(-50%) rotate(45deg);
  -webkit-transition : right 0.4s;
  transition : right 0.4s;
}
#nav .flex > ul li a:hover:after{
  right:0.5em;
}

#nav .link{
  margin-top:50px;
}
#nav .link dt{
  line-height:1.5;
  display:inline-block;
  padding:0 1.5em;
  font-size:24px;
  font-weight:bold;
  position:relative;
}
#nav .link dt:before{
  content:'';
  display:block;
  width:2px;
  height:100%;
  background-color:#cb2318;
  position:absolute;
  left:0;
  top:0;
  transform:rotate(-30deg);
}
#nav .link dt:after{
  content:'';
  display:block;
  width:2px;
  height:100%;
  background-color:#cb2318;
  position:absolute;
  right:0;
  top:0;
  transform:rotate(30deg);
}
#nav .link dd{
  padding:1em 2em 0;
}
#nav .link dd ul{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#nav .link dd ul li{
  width:48.5%;
}
#nav .link dd ul li a{
  display:block;
  padding:0.3em 0;
  line-height:1.3;
  font-size:25px;
  font-weight:900;
  color:#fff;
  border-radius:0.3em;
  box-shadow:0 -5px 0 inset rgba(0,0,0,0.4);
  position:relative;
}
#nav .link dd ul li.line a{
  padding-right:1em;
}
#nav .link dd ul li a:after{
  content:'';
  display:block;
  width:0.5em;
  height:0.5em;
  border-top:3px solid;
  border-right:3px solid;
  position:absolute;
  right:1em;
  top:50%;
  transform:translateY(-50%) rotate(45deg);
}
#nav .link dd ul li.mail a img{
  width:90px;
  position:absolute;
  top:0;
  left:0;
  transform:translate(-35%,-25%);
}
#nav .link dd ul li.line a img{
  width:52px;
  margin-right:0.3em;
  vertical-align:-0.6em;
}
#nav .link dd ul li a div{
  display:inline-block;
  letter-spacing:0.05em;
  text-indent:0.05em;
  line-height:2.6;
}
#nav .link dd ul li a div .large{
  font-size:30px;
}
#nav #close{
  display:inline-block;
  width:12em;
  margin-top:70px;
  line-height:2.8;
  font-size:20px;
  font-weight:bold;
  border:1px solid;
  border-radius:0.3em;
  position:relative;
  cursor:pointer;
}
#nav #close:before{
  content:'×';
  display:block;
  width:1.3em;
  height:1.3em;
  line-height:1.2;
  position:absolute;
  left:1em;
  top:50%;
  transform:translateY(-50%);
  color:#fff;
  background-color:#cb2318;
}

@media screen and (max-width:1300px){
  #nav{
    height:calc(100vh - 90px);
    top:90px;
  }
}

@media screen and (max-width:1024px){
  #nav .flex > ul li a{
    font-size:2.4vw;
  }
  #nav .flex > ul li a:after{
    border-top:0.4vw solid #cb2318;
    border-right:0.4vw solid #cb2318;
  }

  #nav .link{
    margin-top:5%;
  }
  #nav .link dt{
    font-size:2.4vw;
  }
  #nav .link dd ul li a{
    font-size:2.5vw;
  }
  #nav .link dd ul li.line a{
    padding-right:1em;
  }
  #nav .link dd ul li.mail a img{
    width:3.8em;
  }
  #nav .link dd ul li.line a img{
    width:2.2em;
  }
  #nav .link dd ul li a div .large{
    font-size:3vw;
  }
  #nav #close{
    margin-top:7%;
    font-size:2vw;
  }
}

@media screen and (max-width:750px){
  #nav{
    width:100%;
    height:calc(100vh - 60px);
    padding:0 0 0 calc(100% - 300px);
    background-color:rgba(0,0,0,0.5);
    top:60px;
    left:0;
    display:none;
    box-shadow:0 5px 3px -3px rgba(0,0,0,0.3) inset;
    border-top:1px solid #bbbbba;
  }
  #nav .inner{
    max-width:300px;
    width:100%;
    background-color:#fff;
  }
  #nav .flex{
    display: block;
  }
  #nav .flex > ul{
    width:auto;
  }
  #nav .flex > ul li a{
    font-size:16px;
  }
  #nav .flex > ul li a:hover{
    color:#333;
  }
  #nav .flex > ul li a:hover:after{
    right:1em;
  }

  #nav .link{
    margin-top:0;
    padding:5% 3% 10px;
  }
  #nav .link dt{
    font-size:16px;
  }
  #nav .link dt:before{
    width:1px;
  }
  #nav .link dt:after{
    width:1px;
  }
  #nav .link dd{
    padding:0;
  }
  #nav .link dd ul{
    display: block;
  }
  #nav .link dd ul li{
    width:auto;
  }
  #nav .link dd ul li a{
    margin-top:0.5em;
    padding-left:1em;
    font-size:16px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    box-shadow:0 -2px 0 inset rgba(0,0,0,0.4);
  }
  #nav .link dd ul li.mail a{
    padding-left:0.7em;
  }
  #nav .link dd ul li.mail a img{
    width:45px;
    height:45px;
    margin-right:0.3em;
    position:static;
    top:auto;
    left:auto;
    transform:none;
  }
  #nav .link dd ul li.line a img{
    width:40px;
    height:40px;
    margin-right:0.3em;
    vertical-align:0em;
  }
  #nav .link dd ul li a div{
    display:inline-block;
    letter-spacing:0.05em;
    text-indent:0.05em;
    line-height:2.6;
  }
  #nav .link dd ul li a div .large{
    font-size:18px;
  }
}



/* main */
main{
  margin-top:120px;
}

@media screen and (max-width:1300px){
  main{
    margin-top:90px;
  }
}

@media screen and (max-width:782px){
  main{
    margin-top:95px;
  }
}
@media screen and (max-width:750px){
  main{
    margin-top:60px;
  }
}


/* #mv */
#mv{
  padding:30px 0 50px;
  background:url(../images/fv_pc.jpg?20250501)no-repeat center center;
  background-size:cover;
  height: 68svh;
}
#mv h2{
  font-size:48px;
  color:#fff;
}
#mv h2 .first{
  display:inline-block;
  padding:0 0.5em 1.1em;
  background:url(../images/mv_white_line.png)no-repeat center bottom;
  background-size:100% auto;
}
#mv h2 .first .bg_white{
  line-height:1.2;
  display:inline-block;
  padding:0 0.1em;
  color:#023e62;
  background-color:#fff;
  letter-spacing:0.05em;
  text-indent:0.05em;
}
#mv h2 .second{
  display:block;
  text-shadow:0 0 10px rgba(0,0,0,0.6);
  background:;
}
#mv h2 .second .large{
  font-size:60px;
}
#mv h2 .second .red_line{
  background:url(../images/mv_red_line.png)no-repeat center bottom;
  background-size:100% auto;
}
#mv .inner{
  max-width:1280px;
  margin-top:20px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}
#mv .inner .btn li{
  margin:1.5em 0;
}
#mv .inner .btn li a{
  display: block;
  width:13.8em;
  height:3em;
  line-height:2.5;
  padding-left:1.2em;
  font-size:27px;
  font-weight:bold;
  color:#fff;
  text-align:left;
  letter-spacing:0.05em;
  border-radius:0.3em;
  box-shadow:0 -5px 0 inset rgba(0,0,0,0.4),0 5px 10px rgba(0,0,0,0.5);
  position:relative;
}
#mv .inner .btn li a:after{
  content:'';
  display:block;
  width:0.4em;
  height:0.4em;
  border-top:3px solid;
  border-right:3px solid;
  position:absolute;
  right:1em;
  top:50%;
  transform:translateY(-50%) rotate(45deg);
}
#mv .inner .btn li a.bg_red{
  background:url(../images/mv_red_btn.png)repeat-y center center;
  background-size:100% auto;
}
#mv .inner .btn li a.bg_blue{
  background:url(../images/mv_blue_btn.png)repeat-y center center;
  background-size:100% auto;
}
#mv .inner .btn li a .large{
  font-size:30px;
}
#mv .inner .check{
  padding:5px 5px 1em;
  background-color:rgba(255,255,255,0.9);
  border-radius:0.8em;
  font-weight:bold;
  color:#023e62;
  letter-spacing:0.05em;
}
#mv .inner .check dt{
  margin-bottom:0.5em;
  font-size:26px;
  background-color:#fff;
  border-radius:0.6em 0.6em 0 0;
}
#mv .inner .check dd{
  padding:0 1em 0 2.2em;
  font-size:20px;
  text-align:left;
  background:url(../images/mv_check.png)no-repeat 0.5em center;
  background-size:1.3em auto;
}
#mv .inner .check dd .red{
  font-size:24px;
}

@media screen and (max-width:1024px){
  #mv{
    padding:3% 0 5%;
    height: 30svh;
  }
  #mv h2{
    font-size:4.8vw;
  }
  #mv h2 .second .large{
    font-size:6vw;
  }
  #mv .inner{
    margin-top:3%;
  }
  #mv .inner .btn li a{
    font-size:2.7vw;
  }
  #mv .inner .btn li a .large{
    font-size:3vw;
  }
  #mv .inner .check dt{
    font-size:2.6vw;
  }
  #mv .inner .check dd{
    font-size:2vw;
  }
  #mv .inner .check dd .red{
    font-size:2.4vw;
  }
}

@media screen and (max-width:750px){
  #mv{
    padding:7% 0 5%;
    background: url(../images/fv_sp.jpg?20250501)no-repeat center top;
    background-size:100% auto;
    height: 440px;
  }
  #mv h2{
    font-size:6vw;
  }
  #mv h2 .second{
    display:block;
    text-shadow:0 0 5px rgba(0,0,0,0.6);
  }
  #mv h2 .second .large{
    line-height:1.5;
    font-size:7.8vw;
  }
  #mv .inner{
    display:block;
    margin-top:30%;
  }
  #mv .inner .btn{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #mv .inner .btn li{
    width:49%;
    margin:0;
  }
  #mv .inner .btn li a{
    display: block;
    width:100%;
    height:auto;
    line-height:1.5;
    padding:0.3em 0;
    font-size:4.1vw;
    text-align:center;
    box-shadow:0 -2px 0 inset rgba(0,0,0,0.4),0 3px 5px rgba(0,0,0,0.5);
  }
  #mv .inner .btn li a:after{
    width:0.4em;
    height:0.4em;
    border-top:0.7vw solid;
    border-right:0.7vw solid;
    right:0.5em;
  }
  #mv .inner .btn li a.bg_red{
    background:url(../images/mv_red_btn.png)repeat-y center center;
    background-size:100% auto;
  }
  #mv .inner .btn li a.bg_blue{
    background:url(../images/mv_blue_btn.png)repeat-y center center;
    background-size:100% auto;
  }
  #mv .inner .btn li a .large{
    font-size:4.6vw;
  }
  #mv .inner .check{
    margin-top:1em;
    padding:1.5% 1.5% 5%;
    border-radius:0.3em;
  }
  #mv .inner .check dt{
    margin-bottom:0.5em;
    font-size:5.1vw;
    border-radius:0.6em 0.6em 0 0;
  }
  #mv .inner .check dd{
    padding:0 1em 0 2.2em;
    font-size:3.8vw;
    text-align:left;
    background:url(../images/mv_check.png)no-repeat 0.5em center;
    background-size:1.3em auto;
  }
  #mv .inner .check dd .red{
    font-size:4.6vw;
  }
}


/* .cont */
.cont{
  padding:70px 0 50px;
}
.cont .tit{
  font-size:36px;
  font-family: "Zen Old Mincho", serif;
}
.cont .tit2{
  font-size:48px;
  font-family: "Zen Old Mincho", serif;
}
.cont .tit2 .small{
  font-size:40px;
}

@media screen and (max-width:1024px){
  .cont{
    padding:9% 0 5%;
  }
  .cont .tit{
    font-size:3.5vw;
  }
  .cont .tit2{
    font-size:4.8vw;
  }
  .cont .tit2 .small{
    font-size:4vw;
  }
}

@media screen and (max-width:750px){
  .cont .tit{
    font-size:4.6vw;
  }
  .cont .tit2{
    font-size:6.2vw;
  }
  .cont .tit2 .small{
    font-size:5.2vw;
  }
}

@media screen and (max-width:430px){
  #mv{
    height: 470px;
  }
}
@media screen and (max-width:390px){
  #mv{
    height: 440px;
  }
}


/* .cont .fuki_red */
.cont .fuki_red{
  max-width:800px;
  margin:auto;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}
.cont .fuki_red > div{
  width:78%;
  margin-top:1em;
  padding:1em 4em 1em 1.5em;
  background:
    url(../images/fuki_red_top.png)no-repeat left top,
    url(../images/fuki_red_bottom.png)no-repeat left bottom,
    url(../images/fuki_red.png)repeat-y left top;
  background-size:100% auto;
}
.cont .fuki_red > div p{
  text-align:left;
  letter-spacing:0.03em;
}
.cont .fuki_red > div p:nth-of-type(n+2){
  margin-top:1.6em;
}
.cont .fuki_red figure{
  width:24%;
  margin-left:-2%;
}
.cont .fuki_red figure figcaption{
  margin-top:0.5em;
  font-size:20px;
  font-weight:bold;
}

@media screen and (max-width:750px){
  .cont .fuki_red > div{
    width:74%;
    margin-top:0;
    padding:1em 2em 1em 1em;
  }
  .cont .fuki_red > div p{
    font-size:3.8vw;
  }
  .cont .fuki_red figure{
    width:30%;
    margin-left:-4%;
  }
  .cont .fuki_red figure figcaption{
    font-size:2.6vw;
  }
}


/* .cont .fuki_blue */
.cont .fuki_blue{
  max-width:800px;
  margin:auto;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}
.cont .fuki_blue > div{
  width:78%;
  margin-top:1em;
  padding:1em 1.5em 1em 5em;
  background:
    url(../images/fuki_blue_top.png)no-repeat left top,
    url(../images/fuki_blue_bottom.png)no-repeat left bottom,
    url(../images/fuki_blue.png)repeat-y left top;
  background-size:100% auto;
}
.cont .fuki_blue > div p{
  font-size:30px;
  font-weight:bold;
  text-align:left;
  letter-spacing:0.03em;
}
.cont .fuki_blue > div p:nth-of-type(n+2){
  margin-top:1.6em;
}
.cont .fuki_blue figure{
  width:24%;
  margin-right:-2%;
}
.cont .fuki_blue figure figcaption{
  margin-top:0.5em;
  font-size:20px;
  font-weight:bold;
}

@media screen and (max-width:1024px){
  .cont .fuki_blue > div p{
    font-size:3vw;
  }
}

@media screen and (max-width:750px){
  .cont .fuki_blue > div{
    width:74%;
    margin-top:0;
    padding:1em 1em 1em 2.5em;
  }
  .cont .fuki_blue > div p{
    font-size:3.8vw;
  }
  .cont .fuki_blue figure{
    width:30%;
    margin-right:-4%;
  }
  .cont .fuki_blue figure figcaption{
    font-size:2.6vw;
  }
}


/* .cta */
.cta{
  padding-top:50px;
  background:url(../images/cta_bg.webp)no-repeat center center;
  background-size:cover;
}
.cta .tit .small{
  font-size:32px;
}
.cta .lead{
  margin:1em 0 0.3em;
  padding-bottom:1em;
  font-size:27px;
  font-weight:bold;
  background:url(../images/cta_fuki.png)no-repeat center center;
  background-size:auto 100%;
  letter-spacing:0.03em;
  text-indent:0.03em;
  text-align: center;
}
.cta .lead .red{
  font-size:32px;
}
.cont .tit {
  text-align: center;
}

@media screen and (max-width:1024px){
  .cta{
    padding:7% 0;
  }
  .cta .tit .small{
    font-size:3.2vw;
  }
  .cta .lead{
    font-size:2.7vw;
  }
  .cta .lead .red{
    font-size:3.2vw;
  }
}

@media screen and (max-width:750px){
  .cta{
    background:url(../images/cta_bg_s.webp)no-repeat center center;
    background-size:cover;
  }
  .cta .tit .small{
    font-size:4.1vw;
  }
  .cta .lead{
    line-height:1.5;
    margin:0.5em 0 0.3em;
    padding:0.5em 0 1em;
    font-size:5.1vw;
    font-weight:bold;
    background:url(../images/cta_fuki_s.png)no-repeat center center;
    background-size:auto 100%;
    letter-spacing:0.03em;
    text-indent:0.03em;
  }
  .cta .lead .red{
    line-height:1;
    font-size:6.1vw;
  }
}


/* .cta_white */
.cta_white{
  max-width:960px;
  padding:1.5em 3em;
  background-color:#fff;
  box-shadow:0 10px 10px rgba(130,17,9,0.2);
}

@media screen and (max-width:1024px){
  .cta_white{
    padding:1.5em 2.6em;
  }
}

@media screen and (max-width:750px){
  .cta_white{
    padding:1.5em 2em;
  }
}


/* .link_two */
.cta_white .link_two{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.cta_white .link_two > div{
  width:48%;
}
.cta_white .link_two > div dt{
  margin-bottom:0.5em;
  line-height:1.5;
  display:inline-block;
  padding:0 1em;
  font-size:24px;
  font-weight:bold;
  white-space:nowrap;
  position:relative;
}
.cta_white .link_two > div dt:before{
  content:'';
  display:block;
  width:2px;
  height:100%;
  background-color:#cb2318;
  position:absolute;
  left:0;
  top:0;
  transform:rotate(-30deg);
}
.cta_white .link_two > div dt:after{
  content:'';
  display:block;
  width:2px;
  height:100%;
  background-color:#cb2318;
  position:absolute;
  right:0;
  top:0;
  transform:rotate(30deg);
}
.cta_white .link_two > div.mail_blue dt:before,
.cta_white .link_two > div.mail_blue dt:after{
  background-color:#087e9e;
}

.cta_white .link_two > div dd a{
  display:block;
  padding:0.3em 0.3em 0.3em 0;
  line-height:1.3;
  font-size:25px;
  font-weight:900;
  color:#fff;
  border-radius:0.3em;
  box-shadow:0 -5px 0 inset rgba(0,0,0,0.4);
  position:relative;
}
.cta_white .link_two > div dd a:after{
  content:'';
  display:block;
  width:0.5em;
  height:0.5em;
  border-top:3px solid;
  border-right:3px solid;
  position:absolute;
  right:1em;
  top:50%;
  transform:translateY(-50%) rotate(45deg);
}
.cta_white .link_two > div dd a img{
  width:90px;
  position:absolute;
  top:0;
  left:0;
  transform:translate(-35%,-25%);
}
.cta_white .link_two > div dd a div{
  display:inline-block;
  letter-spacing:0.05em;
  text-indent:0.05em;
  line-height:2.6;
}
.cta_white .link_two > div dd a div .large{
  font-size:30px;
}

@media screen and (max-width:1024px){
  .cta_white .link_two > div dt{
    font-size:2.4vw;
  }

  .cta_white .link_two > div dd a{
    font-size:2.5vw;
  }
  .cta_white .link_two > div dd a:after{
    border-top:0.4vw solid;
    border-right:0.4vw solid;
  }
  .cta_white .link_two > div dd a img{
    width:3.8em;
    transform:translate(-45%,-25%);
  }
  .cta_white .link_two > div dd a div .large{
    font-size:3vw;
  }
}

@media screen and (max-width:750px){
  .cta_white .link_two{
    display: block;
  }
  .cta_white .link_two > div{
    width:auto;
    margin-top:1em;
  }
  .cta_white .link_two > div dt{
    font-size:3.8vw;
  }
  .cta_white .link_two > div dt:before,
  .cta_white .link_two > div dt:after{
    width:1px;
  }

  .cta_white .link_two > div dd a{
    display:block;
    padding:0.3em 0.3em 0.3em 0;
    line-height:1.3;
    font-size:4.4vw;
    font-weight:900;
    color:#fff;
    border-radius:0.3em;
    box-shadow:0 -3px 0 inset rgba(0,0,0,0.4);
    position:relative;
  }
  .cta_white .link_two > div dd a img{
    transform:translate(-25%,-25%);
  }
  main .cta_white .link_two > div dd a img{
    transform:translate(-35%,-50%);
  }
  .cta_white .link_two > div dd a div .large{
    font-size:5.1vw;
  }
  main .cta .lead {
    padding: 0 0 1em;
  }
}


/* .link_one */
.cta_white .link_one{

}
.cta_white .link_one > div{
  max-width:720px;
  margin:auto;
}
.cta_white .link_one > div dt{
  margin-bottom:0.5em;
  line-height:1.5;
  display:inline-block;
  padding:0 1em;
  font-size:30px;
  font-weight:bold;
  white-space:nowrap;
  position:relative;
}
.cta_white .link_one > div dt:before{
  content:'';
  display:block;
  width:2px;
  height:100%;
  background-color:#cb2318;
  position:absolute;
  left:0;
  top:0;
  transform:rotate(-30deg);
}
.cta_white .link_one > div dt:after{
  content:'';
  display:block;
  width:2px;
  height:100%;
  background-color:#cb2318;
  position:absolute;
  right:0;
  top:0;
  transform:rotate(30deg);
}
.cta_white .link_one > div.mail_blue dt:before,
.cta_white .link_one > div.mail_blue dt:after{
  background-color:#087e9e;
}

.cta_white .link_one > div dd a{
  display:block;
  padding:0.3em 0.3em 0.3em 0;
  line-height:1.3;
  font-size:30px;
  font-weight:900;
  color:#fff;
  border-radius:0.3em;
  box-shadow:0 -5px 0 inset rgba(0,0,0,0.4);
  position:relative;
}
.cta_white .link_one > div dd a:after{
  content:'';
  display:block;
  width:0.5em;
  height:0.5em;
  border-top:3px solid;
  border-right:3px solid;
  position:absolute;
  right:1em;
  top:50%;
  transform:translateY(-50%) rotate(45deg);
}
.cta_white .link_one > div dd a img{
  width:110px;
  position:absolute;
  top:0;
  left:calc(50% - 9.5em);
  transform:translateY(-30%);
}
.cta_white .link_one > div dd a.bg_blue img{
  left:1%;
  transform:translateY(-30%);
}
.cta_white .link_one > div dd a div{
  display:inline-block;
  letter-spacing:0.05em;
  text-indent:0.05em;
  line-height:2.6;
}
.cta_white .link_one > div dd a div .large{
  font-size:36px;
}

@media screen and (max-width:1024px){
  .cta_white .link_one > div dt{
    font-size:3vw;
  }

  .cta_white .link_one > div dd a{
    font-size:3vw;
  }
  .cta_white .link_one > div dd a:after{
    border-top:0.6vw solid;
    border-right:0.6vw solid;
  }
  .cta_white .link_one > div dd a img{
    width:3.8em;
    left:calc(50% - 9.5em);
    transform:translateY(-30%);
  }
  .cta_white .link_one > div dd a div .large{
    font-size:3.6vw;
  }
}

@media screen and (max-width:750px){
  .cta_white .link_one > div dt{
    font-size:3.8vw;
  }
  .cta_white .link_one > div dt:before,
  .cta_white .link_one > div dt:after{
    width:1px;
  }

  .cta_white .link_one > div dd a{
    font-size:4.4vw;
    box-shadow:0 -3px 0 inset rgba(0,0,0,0.4);
  }
  .cta_white .link_one > div dd a img{
    top:0;
    left:0;
    transform:translate(-30%,-30%);
  }
  .cta_white .link_one > div dd a div .large{
    font-size:5.1vw;
  }
}



/* .hour/.area */
.cta_white .hour{
  margin-top:1em;
  padding:0.2em;
  display:inline-block;
  font-size:24px;
  font-weight:bold;
  border:1px solid;
  border-radius:0.3em;
}
.cta_white .hour dt,
.cta_white .hour dd{
  display:inline-block;
  padding:0 0.5em;
  white-space:nowrap;
}
.cta_white .area{
  margin-top:0.5em;
  font-size:18px;
}

@media screen and (max-width:1024px){
  .cta_white .hour{
    font-size:2.4vw;
  }
  .cta_white .area{
    font-size:1.8vw;
  }
}

@media screen and (max-width:750px){
  .cta_white .hour{
    margin-top:1.5em;
    padding:0.1em;
    display: -webkit-flex;
    display: flex;
    /* -webkit-justify-content: space-between; */
    justify-content: flex-start;
    font-size:3.8vw;
    border-radius:0.2em;
  }
  main .cta_white .hour{
    font-size:3.3vw;
  }
  .cta_white .area{
    font-size:2.7vw;
  }
  .cta_white .hour dd {
    padding-left: 30px;
  }
}

main .cta{
  margin-top: 2rem;
}



/* #cont1 */
#cont1{
}
#cont1 h2{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}
#cont1 h2:before,
#cont1 h2:after{
  content:'';
  display:block;
  width:7em;
  height:1px;
  margin:0 0.6em;
  background-color:#a0a0a0;
}

#cont1 .loop_wrap{
	display: flex;
	width: 100%;
  margin-top:50px;
	overflow: hidden;
}
#cont1 .loop_wrap ul{
	white-space:nowrap;
}
#cont1 .loop_wrap ul li{
	width: 340px;
  margin:0 0.3em;
	display:inline-block;
}
#cont1 .loop_wrap ul:first-child {
	animation: loop 140s -70s linear infinite;
}

#cont1 .loop_wrap ul:last-child {
	animation: loop2 140s linear infinite;
}
@keyframes loop {
	0% {
		transform: translateX(100%);
	}
	to {
		transform: translateX(-100%);
	}
}

@keyframes loop2 {
	0% {
		transform: translateX(0);
	}
	to {
		transform: translateX(-200%);
	}
}

@media screen and (max-width:1024px){
  #cont1 .loop_wrap{
    margin-top:5%;
  }
  #cont1 .loop_wrap ul li{
    width: 300px;
  }
}

@media screen and (max-width:750px){
  #cont1 h2:before,
  #cont1 h2:after{
    width:3em;
  }
  #cont1 .loop_wrap ul li{
    width: 200px;
    margin:0 0.15em;
  }
}


/* #cont2 */
#cont2{
  padding-bottom:90px;
}
#cont2 .tit .middle{
  font-size:48px;
}
#cont2 .tit .large{
  line-height:1;
  font-size:60px;
}
#cont2 .tit .x_large{
  line-height:0;
  font-size:80px;
}
#cont2 .trouble{
  margin-top:50px;
}
#cont2 .trouble figcaption{
  margin-top:1em;
}
#cont2 .graph{
  max-width:900px;
  margin-top:50px;
  padding:40px;
  border:3px solid #cb2318;
  border-radius:0.5em;
}
#cont2 .graph .flex{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
#cont2 .graph .flex > div{
  width:45%;
  margin-top:50px;
}
#cont2 .graph .flex > div dt{
  line-height:2;
  margin-bottom:1em;
  font-size:24px;
  font-weight:bold;
}
#cont2 .graph .flex > div dd figure{
  padding:0 10%;
}
#cont2 .graph .flex > div dd h3{
  margin-top:1em;
  font-size:24px;
  border:4px solid #d3cac9;
  border-radius:100px;
  letter-spacing:0.05em;
  text-indent:0.05em;
  background:url(../images/cont2_arrow.png)no-repeat right 0.5em center;
  background-size:1em auto;
  position:relative;
  cursor:pointer;
}
#cont2 .graph .flex > div dd h3.close{
  background:url(../images/cont2_arrow_close.png)no-repeat right 0.5em center;
  background-size:1em auto;
}
#cont2 .graph .flex > div dd div{
  display:none;
}
#cont2 .graph .flex > div dd div p{
  margin-top:1.6em;
  text-align:left;
  letter-spacing:0.05em;
}
#cont2 .graph .flex > div dd p.indent{
  padding-left:1em;
  text-indent:-1em;
  font-size:18px;
}

@media screen and (max-width:1024px){
  #cont2{
  }
  #cont2 .tit .middle{
    font-size:4.8vw;
  }
  #cont2 .tit .large{
    font-size:6vw;
  }
  #cont2 .tit .x_large{
    font-size:8vw;
  }
  #cont2 .trouble{
    margin-top:5%;
  }
  #cont2 .graph{
    margin-top:5%;
    padding:4% 4% 7%;
  }
  #cont2 .graph .flex > div{
    margin-top:5%;
  }
  #cont2 .graph .flex > div dt{
    font-size:2.4vw;
  }
  #cont2 .graph .flex > div dd h3{
    font-size:2.4vw;
  }
  #cont2 .graph .flex > div dd p.indent{
    font-size:1.8vw;
  }
}

@media screen and (max-width:750px){
  #cont2 .tit{
    font-size:5.7vw;
  }
  #cont2 .tit .middle{
    font-size:7.6vw;
  }
  #cont2 .tit .large{
    font-size:9.6vw;
  }
  #cont2 .tit .x_large{
    line-height:1;
    font-size:12.8vw;
  }
  #cont2 .trouble{
    margin-top:7%;
  }
  #cont2 .trouble figcaption{
    margin-top:1em;
  }
  #cont2 .graph{
    margin-top:9%;
    border:0.8vw solid #cb2318;
    border-radius:0.8em;
  }
  #cont2 .graph .flex{
    display: block;
  }
  #cont2 .graph .flex > div{
    width:auto;
    margin-top:9%;
  }
  #cont2 .graph .flex > div dt{
    font-size:5.1vw;
  }
  #cont2 .graph .flex > div dd figure{
    padding:0 15%;
  }
  #cont2 .graph .flex > div dd h3{
    line-height:2.1;
    font-size:5.1vw;
    border:1vw solid #d3cac9;
    background-size:1.2em auto;
  }
  #cont2 .graph .flex > div dd p.indent{
    font-size:2.7vw;
  }
}


/* #cont3 */
#cont3{
  padding-top:0;
  background-color:#f5e6e7;
}
#cont3 h2{
  padding:90px 0 100px;
  background:url(../images/cont3_h2_bg.png)no-repeat center center;
  background-size:cover;
}
#cont3 h2 .bg_white{
  display:block;
  padding:0.5em 0;
  background-color:#fff;
  border-radius:0.7em;
  position:relative;
}
#cont3 h2 .bg_white:after{
  content:'';
  width:0;
  height:0;
  border-style:solid;
  border-width: 1.2em 1em 0 1em;
  border-color: #fff transparent transparent transparent;
  position:absolute;
  top:100%;
  left:50%;
  transform:translateX(-50%);
}
#cont3 h2 .bg_white .red{
  position:relative;
}
#cont3 h2 .bg_white .red img{
  position:absolute;
  bottom:100%;
  left:0;
  transform:translateX(-28%);
}
#cont3 h2 .bg_white .large{
  margin-left:0.1em;
  line-height:1;
  font-size:60px;
}
#cont3 > h3{
  margin-top:1.5em;
  letter-spacing:-0.05em;
  text-indent:0.5em;
}
#cont3 > h3 .middle{
  font-size:48px;
}
#cont3 > h3 .large{
  font-size:60px;
}
#cont3 .nav{
  margin-top:1em;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#cont3 .nav > div{
  width:31%;
  padding:3% 1.5% 1.5%;
  background-color:#fff;
  position:relative;
  z-index:1;
}
#cont3 .nav > div dt .pink{
  line-height:1;
  font-size:30px;
  color:#f5e6e7;
  position:absolute;
  top:-0.1em;
  right:-0.2em;
  z-index:-1;
}
#cont3 .nav > div dt .pink .large{
  line-height:0;
  font-size:180px;
  vertical-align:-0.6em;
  letter-spacing:-0.06em;
}
#cont3 .nav > div dt .black{
  font-size:28px;
  white-space:nowrap;
}
#cont3 .nav > div dd{
  padding-top:1em;
  font-size:21px;
  font-weight:bold;
}
#cont3 .nav > div dd a{
  line-height:2.3;
  display:block;
  margin-top:1em;
  background:#cb2318 url(../images/cont3_arrow.png)no-repeat right 0.5em center;
  background-size:1.2em auto;
}
#cont3 .cta_white{
  margin-top:50px;
}


@media screen and (max-width:1024px){
  #cont3 h2{
    padding:9% 0 10%;
  }
  #cont3 h2 .bg_white .red img{
    width:5em;
  }
  #cont3 h2 .bg_white .large{
    font-size:6vw;
  }
  #cont3 > h3{
    text-indent:0;
  }
  #cont3 > h3 .middle{
    font-size:4.4vw;
  }
  #cont3 > h3 .large{
    font-size:5.8vw;
  }
  #cont3 .nav > div dt .pink{
    font-size:3vw;
  }
  #cont3 .nav > div dt .pink .large{
    font-size:18vw;
  }
  #cont3 .nav > div dt .black{
    font-size:2.7vw;
  }
  #cont3 .nav > div dd{
    font-size:2vw;
  }
  #cont3 .nav > div dd a{
    line-height:2.3;
    display:block;
    margin-top:1em;
    background:#cb2318 url(../images/cont3_arrow.png)no-repeat right 0.5em center;
    background-size:1.2em auto;
  }
  #cont3 .cta_white{
    margin-top:5%;
  }
}

@media screen and (max-width:750px){
  #cont3 h2 .bg_white{
    position:relative;
    text-indent:3em;
  }
  #cont3 h2 .bg_white .red{
    position:static;
  }
  #cont3 h2 .bg_white .red img{
    width:5em;
    bottom:55%;
    left:0;
    transform:translateX(-8%);
  }
  #cont3 h2 .bg_white .large{
    margin-left:0;
    font-size:7.6vw;
  }
  #cont3 > h3{
    margin-top:1em;
    letter-spacing:-0.05em;
    text-indent:0.5em;
  }
  #cont3 > h3 .middle{
    font-size:6.1vw;
  }
  #cont3 > h3 .large{
    font-size:7.6vw;
  }
  #cont3 .nav{
    margin-top:1em;
    display: block;
  }
  #cont3 .nav > div{
    width:auto;
    margin-top:3%;
    padding:3% 5%;
    background-color:#fff;
    position:relative;
    z-index:1;
  }
  #cont3 .nav > div dt .pink{
    line-height:1;
    font-size:6.1vw;
    position:absolute;
    top:auto;
    bottom:-0.1em;
    right:-0.2em;
    z-index:-1;
  }
  #cont3 .nav > div dt .pink .large{
    line-height:0;
    font-size:25vw;
    vertical-align:0em;
  }
  #cont3 .nav > div dt .black{
    display:block;
    font-size:5.1vw;
    text-align:left;
  }
  #cont3 .nav > div dd{
    padding-top:0;
    font-size:3.4vw;
    text-align:left;
  }
  #cont3 .nav > div dd a{
    height:2em;
    line-height:1.8;
    display:block;
    margin-top:1em;
    background:#cb2318 url(../images/cont3_arrow.png)no-repeat right 0.3em center;
    background-size:1.2em auto;
    width:8em;
    font-size:3vw;
    padding-left:0.8em;
    border-radius:100px;
    position:absolute;
    right:16%;
    top:5%;
  }
}


/* #cont3 .main */
#cont3 .main{
  margin-top:90px;
  padding:30px 30px 50px;
  background-color:#fff;
  position:relative;
}
#cont3 .main .solution{
  width:20%;
  line-height:1;
  padding:1.5em 1em 1.5em 2em;
  font-size:24px;
  font-weight:bold;
  border-radius:0 0 1em 0;
  position:absolute;
  left:0;
  top:0;
  transform:translateX(-0.8em);
}
#cont3 .main .solution:after{
  content:'';
  display:block;
  width:0.8em;
  height:0.8em;
  background-color:#150700;
  position:absolute;
  left:0;
  top:100%;
  clip-path: polygon(0 0, 100% 0, 100% 100%);
}
#cont3 .main .solution .large{
  display:block;
  font-size:110px;
}
#cont3 .main h3{
  padding:0 0 4% 19%;
  font-weight:900;
  text-align:left;
  white-space:nowrap;
}
#cont3 .main h3 .large{
  display:block;
  line-height:1;
  font-size:60px;
}
#cont3 .main h3 .large span{
  font-size:50px;
}
#cont3 .main h3 .small{
  margin-top:0.5em;
  display:block;
  font-size:30px;
}
#cont3 .main .lead{
  margin-top:1.6em;
  text-align:left;
  letter-spacing:0.03em;
}
#cont3 .main .fig1 figcaption{
  display:inline-block;
  padding:0 1em;
  font-size:30px;
  font-weight:bold;
  border-radius:100px;
  transform:translateY(50%);
}
#cont3 .main .fuki_blue,
#cont3 .main .fuki_red{
  margin-top:20px;
}

#cont3 .main .question{
  margin-top:5%;
  padding:5%;
  border:10px solid #f0eeee;
}
#cont3 .main .question h4{
  line-height:1.4;
  font-size:30px;
}
#cont3 .main .question h4 .bg_red{
  display:inline-block;
  padding:0 0.2em;
  font-size:36px;
}
#cont3 .main .question figure{
  margin-top:1em;
}
#cont3 .main .caution{
  max-width:800px;
  width:100%;
  margin:-2em auto 0;
  padding-left:1em;
  text-indent:-1em;
  font-size:18px;
  text-align:left;
}

@media screen and (max-width:1024px){
  #cont3 .main{
    margin-top:9%;
    padding:5% 3%;
  }
  #cont3 .main .solution{
    font-size:2.4vw;
  }
  #cont3 .main .solution .large{
    font-size:11vw;
  }
  #cont3 .main h3 .large{
    font-size:6vw;
  }
  #cont3 .main h3 .large span{
    font-size:4.5vw;
  }
  #cont3 .main h3 .small{
    font-size:3vw;
  }
  #cont3 .main .fig1 figcaption{
    font-size:3vw;
  }
  #cont3 .main .fuki_blue,
  #cont3 .main .fuki_red{
    margin-top:3%;
  }

  #cont3 .main .question{
    border:1vw solid #f0eeee;
  }
  #cont3 .main .question h4{
    font-size:3vw;
  }
  #cont3 .main .question h4 .bg_red{
    font-size:3.6vw;
  }
  
  #cont3 .main .caution{
    margin-top:-3em;
    font-size:1.8vw;
  }
}

@media screen and (max-width:750px){
  #cont3 .main .solution{
    width:24%;
  }
  #cont3 .main .solution .large{
    font-size:14vw;
  }
  #cont3 .main h3{
    padding:0 0 0 24%;
  }
  #cont3 .main h3 .large{
    font-size:7.6vw;
  }
  #cont3 .main h3 .large span{
    font-size:6.4vw;
  }
  #cont3 .main h3 .large span.middle{
    margin-top:0.3em;
    display:block;
    font-size:4.6vw;
    text-indent:-0.5em;
  }
  #cont3 .main h3 .small{
    height:2.8em;
    line-height:1.4;
    font-size:3.8vw;
  }
  #cont3 .main .fig1 figcaption{
    font-size:4.6vw;
  }
  
  #cont3 .main .question{
    margin-top:9%;
  }
  
  #cont3 .main .question h4{
    line-height:1.7;
    font-size:3.8vw;
  }
  #cont3 .main .question h4 .bg_red{
    display:inline;
    font-size:4.6vw;
  }
  #cont3 .main .question figure{
    margin-top:1em;
  }
  
  #cont3 .main .caution{
    margin:0.5em auto 0;
    font-size:2.7vw;
  }
}


/* #cont3 .flow */
#cont3 .main.flow_wrapper{
  margin-top:50px;
  padding-bottom:30px;
}
#cont3 .main .flow{
  margin:70px 0 50px;
  border-radius:0.5em;
  overflow:hidden;
}
#cont3 .main.flow_wrapper .flow{
  margin:0;
}
#cont3 .main .flow dt{
  line-height:2.8;
  font-size:30px;
  font-weight:bold;
  cursor:pointer;
  position:relative;
}
#cont3 .main .flow dt:after{
  content:'＋';
  font-size:40px;
  position:absolute;
  right:0.5em;
  top:50%;
  transform:translateY(-50%);
}
#cont3 .main .flow dt.close:after{
  content:'－';
}
#cont3 .main .flow dd{
  padding:5%;
  border:3px solid #821109;
  border-top:none;
  border-radius:0 0 0.5em 0.5em;
  display:none;
}
#cont3 .main .flow dd ol li{
  padding:15px 0 50px 100px;
  position:relative;
}
#cont3 .main .flow dd ol li:last-child{
  padding-bottom:0;
}
#cont3 .main .flow dd ol li .step_wrapper{
  width:6.5em;
  height:100%;
  font-size:13px;
  font-weight:bold;
  position:absolute;
  left:0;
  top:0;
}
#cont3 .main .flow dd ol li .step_wrapper:before{
  content:'';
  display:block;
  width:1px;
  height:95%;
  border-left:2px dotted #821109;
  position:absolute;
  left:50%;
  top:2px;
  transform:translateX(-50%);
}
#cont3 .main .flow dd ol li .step_wrapper:after{
  content:'';
  width:0;
  height:0;
  border-style:solid;
  border-width: 0.8em 0.5em 0 0.5em;
  border-color: #821109 transparent transparent transparent;
  position:absolute;
  left:50;
  bottom:3%;
  transform:translateX(-50%);
}
#cont3 .main .flow dd ol li:last-child .step_wrapper:before,
#cont3 .main .flow dd ol li:last-child .step_wrapper:after{
  content:none;
}
#cont3 .main .flow dd ol li .step_wrapper .step{
  width:100%;
  height:6.5em;
  line-height:1;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-direction: column;
  flex-direction: column;
  border-radius:50%;
  position:relative;
}
#cont3 .main .flow dd ol li .step span{
  font-size:48px;
}
#cont3 .main .flow dd ol li section{
  text-align:left;
}
#cont3 .main .flow dd ol li section h4{
  font-size:30px;
}
#cont3 .main .flow dd ol li section p{
  margin-top:0.5em;
}

@media screen and (max-width:1024px){
  #cont3 .main.flow_wrapper{
    margin-top:5%;
    padding-top:5%;
    padding-bottom:5%;
  }
  #cont3 .main .flow{
    margin:7% 0 5%;
  }
  #cont3 .main .flow dt{
    font-size:3vw;
  }
  #cont3 .main .flow dt:after{
    font-size:4vw;
  }
  #cont3 .main .flow dd{
    border:0.6vw solid #821109;
  }
  #cont3 .main .flow dd ol li{
    padding:1.5% 0 5% 14%;
  }
  #cont3 .main .flow dd ol li .step_wrapper{
    font-size:1.3vw;
  }
  #cont3 .main .flow dd ol li .step span{
    font-size:4.8vw;
  }
  #cont3 .main .flow dd ol li section h4{
    font-size:3vw;
  }
}

@media screen and (max-width:750px){
  #cont3 .main .flow dt{
    padding:0.5em 0;
    line-height:1.3;
    font-size:4.6vw;
  }
  #cont3 .main .flow dt:after{
    font-size:6.5vw;
  }
  #cont3 .main .flow dd{
    padding:5% 3%;
  }
  #cont3 .main .flow dd ol li{
    padding:1.5% 0 5% 16%;
    position:relative;
  }
  #cont3 .main .flow dd ol li .step_wrapper{
    font-size:1.6vw;
  }
  #cont3 .main .flow dd ol li .step_wrapper:before{
    border-left:0.7vw dotted #821109;
  }
  #cont3 .main .flow dd ol li .step_wrapper:after{
    border-width: 1em 0.7em 0 0.7em;
  }
  #cont3 .main .flow dd ol li .step span{
    font-size:6.1vw;
  }
  #cont3 .main .flow dd ol li section h4{
    font-size:4.6vw;
  }
  #cont3 .main .flow dd ol li section p{
    margin-top:0.3em;
  }
}


/* #cont3_1 */
#cont3_1 .main .last{
  margin-top:40px;
  padding:0.5em 0;
  border:3px solid #cb2318;
  border-radius:0.5em;
}
#cont3_1 .main .last p{
  font-size:24px;
}
#cont3_1 .main .last p:nth-child(n+2){
  margin-top:1.3em;
}

@media screen and (max-width:1024px){
  #cont3_1 .main .last{
    margin-top:5%;
    border:0.5vw solid #cb2318;
    border-radius:0.5em;
  }
  #cont3_1 .main .last p{
    font-size:2.4vw;
  }
}

@media screen and (max-width:750px){
  #cont3_1 .main .last{
    padding:0.5em;
  }
  #cont3_1 .main .last p{
    font-size:3.8vw;
    text-align:left;
  }
}


/* #cont3_3 */
#cont3_3 .main .caution.no_mt{
  margin-top:0;
}

@media screen and (max-width:750px){
  #cont3_3 .main .caution.no_mt{
    margin-top:1em;
  }
}


/* #cont4 */
#cont4{
  padding-bottom:90px;
  background:
    url(../images/cont4_bg_top.png)no-repeat center top,
    url(../images/cont4_bg_bottom.png)no-repeat center bottom;
  background-color:#efefef;
}
#cont4 h2 .large{
  line-height:1.2;
  font-size:60px;
  margin-left:0.3em;
}
#cont4 .inner{
  margin-top:60px;
}
#cont4 > .flex{
  display: -webkit-flex;
  display: flex;
}
#cont4 > .flex figure{
  width:52%;
}
#cont4 > .flex section{
  width:58%;
  padding:3%;
  background-color:rgba(255,255,255,0.9);
  text-align:left;
  transform:translateY(10%);
}
#cont4 > .flex section h3{
  line-height:1.3;
  font-size:36px;
}
#cont4 > .flex section p{
  margin-top:1em;
  font-feature-settings: normal;
}

@media screen and (max-width:1024px){
  #cont4{
    padding-bottom:9%;
  }
  #cont4 h2 .large{
    font-size:6vw;
  }
  #cont4 .inner{
    margin-top:6%;
  }
  #cont4 > .flex section h3{
    font-size:3.6vw;
  }
}

@media screen and (max-width:750px){
  #cont4{
    background:
      url(../images/cont4_bg_top.png)no-repeat left top,
      url(../images/cont4_bg_bottom.png)no-repeat right bottom;
    background-color:#efefef;
    background-size:120% auto;
  }
  #cont4 h2{
    line-height:2;
  }
  #cont4 h2 .large{
    line-height:1.3;
    font-size:7.8vw;
    margin-left:0;
  }
  #cont4 .inner{
    margin-top:6%;
  }
  #cont4 > .flex{
    display: block;
  }
  #cont4 > .flex figure{
    width:auto;
  }
  #cont4 > .flex section{
    width:auto;
    margin-top:-12vw;
    padding:5%;
    transform:none;
    position:relative;
  }
  #cont4 > .flex section h3{
    font-size:5.8vw;
  }
}


/* #cont4_1 */
#cont4 #cont4_1{
}
#cont4 #cont4_1 figure{
	margin-right:-10%;
}
#cont4 #cont4_1 section a{
  width:10.5em;
  line-height:1.7;
  margin-top:1em;
  padding-left:1.2em;
  display:inline-block;
  font-size:21px;
  font-weight:500;
  letter-spacing:0.05em;
  border:2px solid;
  border-radius:100px;
  position:relative;
}
#cont4 #cont4_1 section a:after{
  content:'';
  display:block;
  width:0.4em;
  height:0.4em;
  border-top:2px solid;
  border-right:2px solid;
  position:absolute;
  right:0.7em;
  top:50%;
  transform:translateY(-50%) rotate(45deg);
}

@media screen and (max-width:1024px){
  #cont4 #cont4_1 section a{
    font-size:2vw;
  }
}

@media screen and (max-width:750px){
  #cont4 #cont4_1{
    width:100%;
  }
  #cont4 #cont4_1 figure{
    margin-right:5%;
  }
  #cont4 #cont4_1 section{
    margin-left:5%;
  }
  #cont4 #cont4_1 section a{
    font-size:3.6vw;
    border:1px solid;
  }
  #cont4 #cont4_1 section a:after{
    border-top:0.5vw solid;
    border-right:0.5vw solid;
  }
}


/* #cont4_2 */
#cont4 #cont4_2{
  margin-top:100px;
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
#cont4 #cont4_2 figure{
	margin-left:-10%;
}

@media screen and (max-width:1024px){
  #cont4 #cont4_2{
    margin-top:10%;
  }
}

@media screen and (max-width:750px){
  #cont4 #cont4_2{
    width:100%;
    margin-top:5%;
  }
  #cont4 #cont4_2 figure{
    margin-left:5%;
  }
  #cont4 #cont4_2 section{
    margin-right:5%;
  }
}


/* #cont4_3 */
#cont4 #cont4_3{
  margin-top:120px;
  padding:3%;
  background:#fff url(../images/cont4_3.webp)no-repeat left top;
}
#cont4_3 .profile > section{
  padding-left:44%;
}
#cont4_3 .profile > section h3{
  font-size:24px;
  text-align:left;
}
#cont4_3 .profile > section h3 .bg_wine{
  display:block;
  width:11em;
  margin-bottom:0.5em;
  text-align:center;
}
#cont4_3 .profile > section p{
  margin-top:1em;
  text-align:left;
  font-feature-settings: normal;
}
#cont4_3 .profile > figure{
  margin-top:1em;
  padding-left:44%;
}
#cont4_3 .profile .flex{
  margin-top:1.3em;
  display: -webkit-flex;
  display: flex;
  text-align:left;
}
#cont4_3 .profile .flex ul{
  width:44%;
  padding-left:1em;
}

#cont4_3 .greeting h3{
  font-size:30px;
  text-align:left;
  border-bottom:1px solid #b6a6a5;
}
#cont4_3 .greeting section{
  padding:3%;
}
#cont4_3 .greeting section h4{
  font-size:30px;
  text-align:left;
  text-indent:-0.8em;
  white-space:nowrap;
}
#cont4_3 .greeting section h4 .large{
  line-height:1;
  margin-bottom:0.3em;
  display:block;
  font-size:60px;
}
#cont4_3 .greeting section p{
  margin-top:1.6em;
  text-align:left;
  font-feature-settings: normal;
}
#cont4_3 .greeting section .text_right img{
  width:10em;
}

@media screen and (max-width:1024px){
  #cont4 #cont4_3{
    margin-top:12%;
    background-size:58%;
  }
  #cont4_3 .profile > section h3{
    font-size:2.4vw;
  }
  #cont4_3 .greeting h3{
    font-size:3vw;
  }
  #cont4_3 .greeting section h4{
    font-size:2.9vw;
  }
  #cont4_3 .greeting section h4 .large{
    font-size:6vw;
  }
}

@media screen and (max-width:750px){
  #cont4 #cont4_3{
    margin-top:5%;
    padding:5%;
  }
  #cont4_3 .profile > section{
    padding-left:36%;
  }
  #cont4_3 .profile > section h3{
    font-size:3.6vw;
  }
  #cont4_3 .profile > section h3 .bg_wine{
    display:block;
    width:11em;
    margin-bottom:0.5em;
    text-align:center;
  }
  #cont4_3 .profile > figure{
    padding-left:0;
  }
  #cont4_3 .profile .flex{
    margin-top:1em;
    display: block;
  }
  #cont4_3 .profile .flex ul{
    width:auto;
    padding-left:0;
  }
  #cont4_3 .profile .flex dl{
    margin-top:1em;
  }
  
  #cont4_3 .greeting{
    margin-top:9%;
  }
  #cont4_3 .greeting h3{
    font-size:4.6vw;
  }
  #cont4_3 .greeting section{
    padding:3% 0;
  }
  #cont4_3 .greeting section h4{
    font-size:3.9vw;
    text-align:center;
    text-indent:0;
  }
  #cont4_3 .greeting section h4 .large{
    line-height:1.5;
    font-size:7.8vw;
  }
  #cont4_3 .greeting section .text_right img{
    width:8em;
  }
}



/* #cont5 */
#cont5{
  padding-bottom:0;
}
#cont5 .tit .red{
  display:block;
}
#cont5 .tit .middle{
  font-size:60px;
}
#cont5 .tit .large{
  line-height:1;
  font-size:80px;
}
#cont5 .tit .x-large{
  line-height:1;
  font-size:120px;
}

#cont5 .reason_list li{
  margin-top:70px;
}
#cont5 .reason_list li:first-child{
  margin-top:50px;
  background:url(../images/cont5_1_bg.webp)no-repeat center top;
}
#cont5 .reason_list li:nth-child(2){
  background:url(../images/cont5_2_bg.webp)no-repeat center top;
}
#cont5 .reason_list li:last-child{
  background:url(../images/cont5_3_bg.webp)no-repeat center top;
}
#cont5 .reason_list li:nth-child(even) .inner{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}
#cont5 .reason_list li .inner section{
  width:720px;
  height:480px;
  position:relative;
  z-index:2;
  text-align:left;
}
#cont5 .reason_list li .inner section:before{
  content:'';
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  left:0;
  top:0;
  z-index:-1;
  background-color:rgba(255,255,255,0.8);
}
#cont5 .reason_list li:nth-child(odd) .inner section{
  padding-right:80px;
}
#cont5 .reason_list li:nth-child(odd) .inner section:before{
  clip-path:polygon(0 0, 100% 0, calc(100% - 80px) 100%, 0 100%);
}
#cont5 .reason_list li:nth-child(even) .inner section{
  padding-left:110px;
}
#cont5 .reason_list li:nth-child(even) .inner section:before{
  clip-path:polygon(80px 0, 100% 0, 100% 100%, 0 100%);
}

#cont5 .reason_list li .inner section h3{
  line-height:1.4;
  padding-left:2.5em;
  font-size:48px;
  white-space:nowrap;
  transform:translateY(-0.3em);
  position:relative;
}
#cont5 .reason_list li .inner section h3 .reason{
  line-height:0.8;
  font-size:150px;
  font-weight:normal;
  text-align:center;
  position:absolute;
  left:0;
  top:0.1em;
}
#cont5 .reason_list li .inner section h3 .reason span{
  width:3.2em;
  display:block;
  margin:auto;
  line-height:1.3;
  letter-spacing:0.1em;
  text-indent:0.1em;
  font-size:30px;
  font-weight:bold;
  color:#fff;
  text-align:center;
  position:relative;
}
#cont5 .reason_list li .inner section h3 .reason span:before{
  content:'';
  display:block;
  width:100%;
  height:100%;
  background-color:#cb2318;
  position:absolute;
  left:0;
  top:0;
  z-index:-1;
  transform: skewX(-10deg);
}
#cont5 .reason_list li .inner section h3 .middle{
  font-size:40px;
}
#cont5 .reason_list li .inner section h3 .small{
  margin-top:0.3em;
  display:block;
  font-size:30px;
}
#cont5 .reason_list li .inner section h3 .small.mt{
  margin-top:1.2em;
}
#cont5 .reason_list li .inner section p{
  margin-top:1.6em;
}
#cont5 + .cta{
  padding:90px 0;
}

@media screen and (max-width:1024px){
  #cont5 .tit .middle{
    font-size:6vw;
  }
  #cont5 .tit .large{
    font-size:8vw;
  }
  #cont5 .tit .x-large{
    font-size:12vw;
  }

  #cont5 .reason_list li{
    margin-top:5%;
  }
  #cont5 .reason_list li:first-child{
    margin-top:5%;
    background-image:none;
  }
  #cont5 .reason_list li:nth-child(2){
    background-image:none;
  }
  #cont5 .reason_list li:last-child{
    background-image:none;
  }
  #cont5 .reason_list li:nth-child(even) .inner{
    display: block;
  }
  #cont5 .reason_list li .inner{
    width:100%;
  }
  #cont5 .reason_list li .inner img.only_smart{
    display:block !important;
  }
  #cont5 .reason_list li .inner section{
    width:auto;
    height:auto;
    position:relative;
    padding:3% 6% 5%;
    margin-top:-6%;
  }
  #cont5 .reason_list li:nth-child(odd) .inner section{
    padding-right:6%;
  }
  #cont5 .reason_list li:nth-child(odd) .inner section:before{
    clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
  #cont5 .reason_list li:nth-child(even) .inner section{
    padding-left:6%;
  }
  #cont5 .reason_list li:nth-child(even) .inner section:before{
    clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
  #cont5 .reason_list li .inner section h3{
    padding-top:0.9em;
    font-size:4.8vw;
    transform:translateY(-0.3em);
  }
  #cont5 .reason_list li .inner section h3 br{
    display:none;
  }
  #cont5 .reason_list li .inner section h3 .reason{
    font-size:15vw;
  }
  #cont5 .reason_list li .inner section h3 .reason span{
    font-size:3vw;
  }
  #cont5 .reason_list li .inner section h3 .middle{
    font-size:4vw;
  }
  #cont5 .reason_list li .inner section h3 .small{
    font-size:3vw;
  }
  #cont5 .reason_list li .inner section h3 .small.mt{
    margin-top:0.3em;
  }
  #cont5 + .cta{
    padding:7% 0;
  }
}

@media screen and (max-width:750px){
  #cont5 .tit .middle{
    font-size:7.8vw;
  }
  #cont5 .tit .large{
    font-size:10.4vw;
  }
  #cont5 .tit .x-large{
    font-size:15.6vw;
  }

  #cont5 .reason_list li .inner section{
    width:auto;
    height:auto;
    position:relative;
    padding:5% 6% 5%;
    margin-top:0;
  }
  #cont5 .reason_list li .inner section h3{
    padding-left:3em;
    padding-top:0;
    font-size:6.2vw;
    transform:translateY(-0.3em);
  }
  #cont5 .reason_list li .inner section h3 br{
    display:block;
  }
  #cont5 .reason_list li .inner section h3 .reason{
    font-size:19.5vw;
  }
  #cont5 .reason_list li .inner section h3 .reason span{
    font-size:3.9vw;
  }
  #cont5 .reason_list li .inner section h3 .middle{
    font-size:5.2vw;
  }
  #cont5 .reason_list li .inner section h3 .small{
    font-size:3.9vw;
  }
  #cont5 .reason_list li .inner section h3 .small.mt{
    margin-top:1em;
  }
}


/* #cont5 .tbl */
#cont5 .tbl{
  margin-top:50px;
}
#cont5 .tbl h3{
  font-size:36px;
}
#cont5 .tbl .table_wrapper{
  margin-top:30px;
  overflow:hidden;
}
#cont5 .tbl .table_wrapper table{
  width:100%;
  padding-top:20px;
  border-collapse: separate;
}
#cont5 .tbl .table_wrapper table th,
#cont5 .tbl .table_wrapper table td{
  height:2.5em;
  font-size:24px;
  font-weight:bold;
  border:1px solid #fff;
}
#cont5 .tbl .table_wrapper table th{
  color:#fff;
  background-color:#023e62;
}
#cont5 .tbl .table_wrapper table th:first-child{
  width:12em;
}
#cont5 .tbl .table_wrapper table tr:first-child th:first-child{
  background-color:transparent;
}
#cont5 .tbl .table_wrapper table tr:first-child th:nth-child(2){
  background-color:transparent;
  position:relative;
}
#cont5 .tbl .table_wrapper table tr:first-child th:nth-child(2) span{
  display:block;
  width:100%;
  line-height:2.5;
  font-size:30px;
  background-color:#cb2318;
  border-radius:0.3em 0.3em 0 0;
  position:absolute;
  bottom:0;
}
#cont5 .tbl .table_wrapper table tr:first-child th:nth-child(n+3){
  width:9em;
  background-color:#087e9e;
}
#cont5 .tbl .table_wrapper table tr:first-child th:last-child{
  border-radius:0 0.5em 0 0;
}
#cont5 .tbl .table_wrapper table tr:nth-child(2) th:first-child{
  border-radius:0.5em 0 0 0;
}
#cont5 .tbl .table_wrapper table tr:last-child th:first-child{
  border-radius:0 0 0 0.5em;
}
#cont5 .tbl .table_wrapper table tr:nth-child(even) td{
  background-color:#e6f2f5;
}
#cont5 .tbl .table_wrapper table tr:nth-child(odd) td{
  background-color:#cfe6eb;
}
#cont5 .tbl .table_wrapper table tr:nth-child(even) td:first-of-type{
  background-color:#f5e6e7;
}
#cont5 .tbl .table_wrapper table tr:nth-child(odd) td:first-of-type{
  background-color:#ebcfd1;
}
#cont5 .tbl .table_wrapper table tr:last-child td:last-of-type{
  border-radius:0 0 0.5em 0;
}
#cont5 .tbl .table_wrapper table tr:nth-child(2) td:first-of-type{
  position:relative;
}
#cont5 .tbl .table_wrapper table tr:nth-child(2) td:first-of-type:before{
  content:'';
  display:block;
  width:100%;
  height:17.5em;
  border:3px solid #cb2318;
  border-top:none;
  position:absolute;
  top:-2px;
}
#cont5 .tbl .table_wrapper table tr td:first-of-type{
  color:#821109;
}
#cont5 .tbl .table_wrapper table tr td img{
  width:34px;
}

@media screen and (max-width:1024px){
  #cont5 .tbl{
    margin-top:5%;
  }
  #cont5 .tbl h3{
    font-size:3.6vw;
  }
  #cont5 .tbl .table_wrapper{
    margin-top:3%;
  }
  #cont5 .tbl .table_wrapper table{
    padding-top:3%;
  }
  #cont5 .tbl .table_wrapper table th,
  #cont5 .tbl .table_wrapper table td{
    font-size:2.4vw;
  }
  #cont5 .tbl .table_wrapper table tr:first-child th:nth-child(2) span{
    font-size:3vw;
  }
  #cont5 .tbl .table_wrapper table tr td img{
    width:3.4vw;
  }
}

@media screen and (max-width:750px){
  #cont5 .tbl h3{
    font-size:4.6vw;
  }
  #cont5 .tbl .table_wrapper table th,
  #cont5 .tbl .table_wrapper table td{
    font-size:3.1vw;
  }
  #cont5 .tbl .table_wrapper table th:first-child{
    width:9em;
  }
  #cont5 .tbl .table_wrapper table tr:first-child th:nth-child(2) span{
    font-size:3.9vw;
  }
  #cont5 .tbl .table_wrapper table tr:first-child th:nth-child(n+3){
    width:6em;
  }
  #cont5 .tbl .table_wrapper table tr:nth-child(2) td:first-of-type:before{
    border:2px solid #cb2318;
    border-top:none;
  }
  #cont5 .tbl .table_wrapper table tr td img{
    width:4vw;
  }
}


/* #cont5 .point */
#cont5 .point{
  margin-top:120px;
  padding-bottom:90px;
  background:url(../images/cont5_bg.png)repeat-y center top;
  position:relative;
}
#cont5 .point h3{
  width:5em;
  height:1.6em;
  line-height:1;
  margin:auto;
  font-size:60px;
  font-weight:900;
  letter-spacing:-0.08em;
  transform:translateY(-0.9em);
  position:relative;
}
#cont5 .point h3:before{
  content:'';
  display:block;
  width:100%;
  height:100%;
  background-color:#fff;
  clip-path:polygon(0 0, 100% 0, 50% 100%);
  position:absolute;
  left:0;
  top:49%;
  z-index:-1;
}
#cont5 .point dl{
  margin-top:50px;
  padding:0 30px 15px;
  color:#fff;
  font-weight:bold;
  border:4px solid #fff;
  border-radius:1.2em;
}
#cont5 .point dl dt{
  display:inline-block;
  padding:0 0.3em;
  font-size:36px;
  transform:translateY(-55%);
  line-height:1;
}
#cont5 .point dl dd{
  padding:0.3em 0 0.3em 2em;
  font-size:30px;
  text-align:left;
  background:url(../images/cont5_check.png)no-repeat left center;
}
#cont5 .point dl dd span{
  line-height:1.3;
  display:inline-block;
  padding:0 0.1em;
  font-size:36px;
  background-color:#fff;
}

@media screen and (max-width:1024px){
  #cont5 .point{
    margin-top:12%;
    padding-bottom:9%;
    position:relative;
  }
  #cont5 .point h3{
    font-size:5.8vw;
  }
  #cont5 .point dl{
    margin-top:5%;
    padding:0 4% 3%;
    color:#fff;
    font-weight:bold;
    border:4px solid #fff;
    border-radius:1.2em;
  }
  #cont5 .point dl dt{
    font-size:3.6vw;
  }
  #cont5 .point dl dd{
    font-size:3vw;
    background-size:1.2em;
  }
  #cont5 .point dl dd span{
    line-height:1;
    display:inline;
    font-size:3.6vw;
  }
}

@media screen and (max-width:750px){
  #cont5 .point{
    margin-top:18%;
    background:url(../images/cont5_bg_s.png)repeat-y center top;
    background-size:100% auto;
  }
  #cont5 .point h3{
    font-size:7.8vw;
  }
  #cont5 .point dl{
    padding:0 5% 3%;
    border:0.6vw solid #fff;
    border-radius:1em;
  }
  #cont5 .point dl dt{
    font-size:4.6vw;
    background:url(../images/cont5_dt_bg_s.png)repeat-y center top;
    background-size:100% auto;
  }
  #cont5 .point dl dd{
    font-size:3.9vw;
    background-position:left 0.5em;
    background-size:1.3em;
  }
  #cont5 .point dl dd span{
    font-size:4.6vw;
    background:linear-gradient(transparent 10%, #fff 10%);
  }
}


/* #cont6 */
#cont6{
  padding-bottom:90px;
}
#cont6 .slick_wrapper{
  margin-top:50px;
  padding-bottom:100px;
  overflow:hidden;
  position:relative;
}
#cont6 .slick_wrapper:before{
  content:'';
  display:block;
  width:calc(50% - 510px);
  height:100%;
  background-color:rgba(255,255,255,0.8);
  position:absolute;
  left:0;
  top:0;
  z-index:1;
}
#cont6 .slick_wrapper:after{
  content:'';
  display:block;
  width:calc(50% - 510px);
  height:100%;
  background-color:rgba(255,255,255,0.8);
  position:absolute;
  right:0;
  top:0;
  z-index:1;
}
#cont6 #slick1{
  width:1020px;
  margin:auto;
  opacity: 0;
  transition: opacity .3s linear;
}

#cont6 #slick1.slick-initialized{
  opacity: 1;
}
#slick1 .slick-list{
  overflow:visible;
}
#cont6 #slick1 .item{
  padding:0 30px;
}
#cont6 #slick1 .item section{
  height:100%;
  border:1px solid #821109;
}
#cont6 #slick1 .item section h3{
  padding:0.5em 0;
  line-height:;
  font-size:24px;
}
#cont6 #slick1 .item section figure{
  padding:5%;
}
#cont6 #slick1 .item section dl{
  padding:5%;
}
#cont6 #slick1 .item section dl dt{
  font-size:24px;
  font-weight:bold;
  border-radius:100px;
}
#cont6 #slick1 .item section dl dd{
  margin:0.5em 0 1em;
  padding-left:90px;
  text-align:left;
  position:relative;
}
#cont6 #slick1 .item section dl dd:first-of-type{
  min-height:12.5em;
}
#cont6 #slick1 .item section dl dd img{
  width:80px;
  position:absolute;
  left:0;
  top:0;
}

#cont6 .point{
  width:600px;
  padding:1% 2%;
  border:5px solid #cb2318;
  border-radius:0.5em;
}
#cont6 .point li{
  margin:0.2em 0;
  padding-left:1.5em;
  font-size:24px;
  font-weight:bold;
  text-align:left;
  background:url(../images/mv_check.png)no-repeat left center;
  background-size:1.1em auto;
}


@media screen and (max-width:1180px){
  #cont6 .slick_wrapper:before,
  #cont6 .slick_wrapper:after{
    width:calc(50% - 45%);
  }
  #cont6 #slick1{
    width:90%;
  }
  #cont6 #slick1 .item{
    padding:0 3vw;
  }
  #cont6 #slick1 .item section h3{
    font-size:2vw;
  }
  #cont6 #slick1 .item section dl dt{
    font-size:2vw;
  }
  #cont6 #slick1 .item section dl dd{
    padding-left:8vw;
  }
  #cont6 #slick1 .item section dl dd img{
    width:7vw;
  }
}

@media screen and (max-width:1024px){
  #cont6{
    padding-bottom:9%;
  }
  #cont6 .slick_wrapper{
    margin-top:5%;
  }
  #cont6 #slick1 .item section dl dd:first-of-type{
    min-height:14em;
  }
  
  #cont6 .point{
    width:60%;
    padding:1% 2%;
    border:0.5vw solid #cb2318;
    border-radius:0.5em;
  }
  #cont6 .point li{
    font-size:2.4vw;
  }
}

@media screen and (max-width:750px){
  #cont6 .slick_wrapper{
    padding-bottom:60px;
    position:static;
  }
  #cont6 .slick_wrapper:before,
  #cont6 .slick_wrapper:after{
    content:none;
  }
  #cont6 #slick1{
    width:100%;
  }
  #cont6 #slick1 .item{
    padding:0 12vw;
  }
  #cont6 #slick1 .item section h3{
    font-size:4vw;
  }
  #cont6 #slick1 .item section dl dt{
    font-size:4vw;
  }
  #cont6 #slick1 .item section dl dd{
    padding-left:16vw;
    font-size:3.2vw;
  }
  #cont6 #slick1 .item section dl dd:first-of-type{
    min-height:12.5em;
  }
  #cont6 #slick1 .item section dl dd img{
    width:14vw;
  }
  
  #cont6 .point{
    width:94%;
    margin-top:9%;
    border-width:0.7vw;
  }
  #cont6 .point li{
    font-size:4vw;
  }
}


/* #cont7 */
#cont7{
  background-color:#fafafa;
}
#cont7 .slick_wrapper{
  margin-top:50px;
  padding-bottom:100px;
}
#cont7 #slick2{
  width:1020px;
  margin:auto;
  opacity: 0;
  transition: opacity .3s linear;
}
#cont7 #slick2.slick-initialized{
  opacity: 1;
}
#cont7 #slick2 .item{
  padding:0 30px;
}
#cont7 #slick2 .item .flex{
  height:100%;
  padding:2%;
  border:10px solid #dcdcdc;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#cont7 #slick2 .item .flex .left_cont{
  width:22%;
}
#cont7 #slick2 .item .flex .left_cont dl{
  margin-top:1em;
  font-size:18px;
  font-weight:bold;
  white-space:nowrap;
}
#cont7 #slick2 .item .flex .left_cont dl dt{
  width:3em;
  float:left;
}
#cont7 #slick2 .item .flex .left_cont dl dd{
  margin-bottom:0.5em;
  padding-left:3.5em;
  text-align:left;
}

#cont7 #slick2 .item .flex .right_cont{
  width:73%;
  padding-top:0.5em;
  text-align:left;
}
#cont7 #slick2 .item .flex .right_cont h3{
  padding-bottom:1.5em;
  font-size:30px;
  background:url(../images/cont7_tit.png)no-repeat left bottom;
}
#cont7 #slick2 .item .flex .right_cont p{
  margin-top:1.6em;
}
#cont7 #slick2 .item .flex .right_cont p:first-of-type{
  margin-top:1em;
}
#cont7 #slick2 .item .flex .right_cont p .line{
  background:linear-gradient(transparent 60%, #ff0 60%);
}

@media screen and (max-width:1180px){
  #cont7 #slick2{
    width:90%;
  }
  #cont7 #slick2 .item{
    padding:0 3vw;
  }
  #cont7 #slick2 .item .flex{
    border:1vw solid #dcdcdc;
  }
  #cont7 #slick2 .item .flex .left_cont dl{
    font-size:1.6vw;
  }

  #cont7 #slick2 .item .flex .right_cont h3{
    font-size:3vw;
    background-size:100% auto;
  }
}

@media screen and (max-width:1024px){
  #cont7 .slick_wrapper{
    margin-top:5%;
  }
}

@media screen and (max-width:750px){
  #cont7 .slick_wrapper{
    padding-bottom:60px;
  }
  #cont7 #slick2{
    width:100%;
  }
  #cont7 #slick2 .item{
    padding:0 9vw;
  }
  #cont7 #slick2 .item .flex{
    padding:4%;
    border:1.5vw solid #dcdcdc;
    display: block;
  }
  #cont7 #slick2 .item .flex .left_cont{
    width:auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  #cont7 #slick2 .item .flex .left_cont figure{
    width:37%;
  }
  #cont7 #slick2 .item .flex .left_cont dl{
    width:60%;
    margin-top:0;
    font-size:3vw;
  }

  #cont7 #slick2 .item .flex .right_cont{
    width:auto;
    padding-top:1em;
  }
  #cont7 #slick2 .item .flex .right_cont h3{
    padding-bottom:1.2em;
    font-size:4vw;
    text-align:center;
    background-size:100% auto;
  }
  #cont7 #slick2 .item .flex .right_cont p:first-of-type{
    margin-top:0.5em;
  }
}


/* #cont8 */
#cont8{
}
#cont8 .inner{
  margin-top:40px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
}
#cont8 .inner li{
  width:22%;
}
#cont8 .inner li figure figcaption{
  margin-top:1em;
  line-height:1.5;
  font-weight:500;
}
#cont8 .inner li figure figcaption .small{
  display:block;
  font-size:18px;
}
#cont8 .inner li figure figcaption .large{
  display:block;
  font-size:24px;
}
#cont8 .inner li dl{
  height:6.5em;
  line-height:1.3;
  margin-top:1.5em;
  font-size:18px;
}
#cont8 .inner li dl dt{
  width:3em;
  font-weight:bold;
  background-color:#fff;
  border-radius:0.15em;
  float:left;
}
#cont8 .inner li dl dd{
  margin-bottom:0.5em;
  padding-left:3.5em;
  text-align:left;
}
#cont8 .inner li p{
  padding-top:1em;
  border-top:1px solid;
  font-size:18px;
  text-align:left;
  font-feature-settings: normal;
}

@media screen and (max-width:1024px){
  #cont8 .inner{
    margin-top:5%;
  }
  #cont8 .inner li figure figcaption .small{
    font-size:1.8vw;
  }
  #cont8 .inner li figure figcaption .large{
    font-size:2.4vw;
  }
  #cont8 .inner li dl{
    font-size:1.8vw;
  }
  #cont8 .inner li p{
    font-size:1.8vw;
  }
}

@media screen and (max-width:750px){
  #cont8 .inner{
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  #cont8 .inner li{
    width:44%;
  }
  #cont8 .inner li:nth-child(n+3){
    margin-top:9%;
  }
  #cont8 .inner li figure figcaption .small{
    font-size:2.8vw;
  }
  #cont8 .inner li figure figcaption .large{
    font-size:3.9vw;
  }
  #cont8 .inner li dl{
    margin-top:1em;
    font-size:2.8vw;
  }
  #cont8 .inner li:nth-child(-n+2) dl{
    height:4.5em;
  }
  #cont8 .inner li p{
    font-size:3.1vw;
  }
}


/* #cont9 */
#cont9{
  padding-bottom:90px;
  background-color:#fcf8f9;
}
#cont9 dl{
  margin-top:50px;
}
#cont9 dl > div{
  margin-top:30px;
  padding:0.8em 0 0.8em 1.5em;
  border:1px solid #b6a6a5;
  text-align:left;
  background-color:#fff;
}
#cont9 dl > div dt{
  padding-left:5%;
  padding-right:3em;
  font-size:28px;
  font-weight:bold;
  cursor:pointer;
  position:relative;
}
#cont9 dl > div dt:before{
  content:'Q';
  display:block;
  width:1em;
  line-height:1;
  font-size:30px;
  font-weight:900;
  text-align:center;
  color:#cb2318;
  position:absolute;
  left:0;
  top:0.2em;
}
#cont9 dl > div dt:after{
  content:'＋';
  line-height:1;
  font-size:45px;
  font-weight:900;
  color:#b6a6a5;
  position:absolute;
  right:0.5em;
  top:0;
}
#cont9 dl > div dt.close:after{
  content:'－';
}
#cont9 dl > div dd{
  margin-top:1.5em;
  padding:0 5%;
  position:relative;
  display:none;
}
#cont9 dl > div dd:before{
  content:'A';
  display:block;
  width:1em;
  line-height:1;
  font-size:30px;
  font-weight:900;
  text-align:center;
  color:#087e9e;
  position:absolute;
  left:0;
  top:0;
}

@media screen and (max-width:1024px){
  #cont9{
    padding-bottom:9%;
  }
  #cont9 dl{
    margin-top:5%;
  }
  #cont9 dl > div{
    margin-top:3%;
  }
  #cont9 dl > div dt{
    font-size:2.8vw;
  }
  #cont9 dl > div dt:before{
    font-size:3vw;
  }
  #cont9 dl > div dt:after{
    font-size:4.5vw;
  }
  #cont9 dl > div dd:before{
    font-size:3vw;
  }
}

@media screen and (max-width:750px){
  #cont9 dl > div{
    padding:0.8em 0 0.8em 0.5em;
  }
  #cont9 dl > div dt{
    padding-left:8%;
    font-size:4vw;
  }
  #cont9 dl > div dt:before{
    font-size:5.2vw;
    top:0.1em;
  }
  #cont9 dl > div dt:after{
    font-size:7vw;
  }
  #cont9 dl > div dd{
    margin-top:1em;
    padding-left:8%;
  }
  #cont9 dl > div dd:before{
    font-size:5.2vw;
  }
}


/* #cont10 */
#cont10{
  padding-bottom:90px;
  background-color:#fcf8f9;
}
#cont10 .tbl{
  margin-top:50px;
  text-align:left;
}
#cont10 .tbl th,
#cont10 .tbl td{
  padding:1em;
  border:3px solid #fcf8f9;
  letter-spacing:0.03em;
}
#cont10 .tbl th{
  width:270px;
  background-color:#f5e6e7;
  vertical-align:top;
  border-right:none;
}
#cont10 .tbl td{
  background-color:#fff;
  border-left:none;
}
#cont10 .tbl td.flex{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#cont10 .tbl td.flex dl,
#cont10 .tbl td.flex figure{
  width:48%;
}
#cont10 .tbl td ol{
  margin-top:1em;
  padding-left:1.5em;
}
#cont10 .tbl td ol li{
  list-style:decimal;
}
#cont10 .tbl td .address div:nth-child(n+2){
  margin-top:3em;
}
#cont10 .tbl td .staff dt{
  float:left;
}
#cont10 .tbl td .staff dd{
  padding-left:5.5em;
}

@media screen and (max-width:1024px){
  #cont10{
    padding-bottom:9%;
  }
  #cont10 .tbl{
    margin-top:5%;
  }
  #cont10 .tbl th,
  #cont10 .tbl td{
    border:0.4vw solid #fcf8f9;
  }
  #cont10 .tbl th{
    width:27%;
  }
}

@media screen and (max-width:750px){
  #cont10 .tbl th,
  #cont10 .tbl td{
    padding:1em;
    border:none;
    display:block;
  }
  #cont10 .tbl th{
    width:100%;
    padding:0.5em 1em;
    font-size:4vw;
   }
  #cont10 .tbl td{
    font-size:3.2vw;
   }
  #cont10 .tbl td.flex dl{
    width:50%;
  }
  #cont10 .tbl td.flex figure{
    width:46%;
  }
  #cont10 .tbl td .address div:nth-child(n+2){
    margin-top:1.6em;
  }
}


/* #cont11 */
#cont11{
  padding-bottom:90px;
}
#cont11 .inner{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#cont11 .inner section{
  width:580px;
}
#cont11 .inner section h2{
  line-height:1.6;
  text-align:left;
}
#cont11 .inner section h2 .bg_wine{
  display:block;
  width:10em;
  line-height:2;
  font-size:28px;
  text-align:center;
}
#cont11 .inner section .address{
  margin-top:1em;
  text-align:left;
}
#cont11 .inner section .address dt{
  margin-bottom:1em;
}
#cont11 .inner figure{
  width:360px;
}
#cont11 .map{
  margin-top:70px;
}
#cont11 .btn{
  width:14em;
  line-height:2;
  margin-top:40px;
  display:inline-block;
  font-size:18px;
  font-weight:bold;
  background-color:#f5e6e7;
  border:1px solid;
  border-radius:100px;
}
#cont11 .btn img{
  width:1.1em;
}

@media screen and (max-width:1024px){
  #cont11{
    padding-bottom:9%;
  }
  #cont11 .inner section h2 .bg_wine{
    font-size:2.8vw;
  }
  #cont11 .inner section{
    width:58%;
  }
  #cont11 .inner figure{
    width:36%;
  }
  #cont11 .map{
    margin-top:7%;
    padding-top:63%;
    position:relative;
  }
  #cont11 .map iframe{
    width:100%;
    height:100%;
    position:absolute;
    left:0;
    top:0;
  }
  #cont11 .btn{
    margin-top:4%;
    font-size:1.8vw;
  }
}

@media screen and (max-width:768px){
  #cont11 .inner{
    display: block;
  }
  #cont11 .inner section{
    width:auto;
  }
  #cont11 .inner section h2{
    text-align:center;
  }
  #cont11 .inner section h2 .bg_wine{
    font-size:3.6vw;
    margin:0 auto 0.5em;
  }
  #cont11 .inner figure{
    width:48%;
    margin:5% auto 0;
  }
  #cont11 .map{
    width:100%;
    margin-top:9%;
  }
  #cont11 .btn{
    margin-top:5%;
    font-size:3.6vw;
  }
}


/* #contact */
#contact{
  padding-bottom:90px;
}
#contact h2 .bg_wine{
  display:block;
  width:9em;
  line-height:2;
  margin:auto;
  font-size:28px;
}
#contact .tbl{
  margin-top:50px;
  text-align:left;
}
#contact .tbl th,
#contact .tbl td{
  padding:1em;
  border:3px solid #fff;
  letter-spacing:0.03em;
}
#contact .tbl th{
  width:270px;
  background-color:#f5e6e7;
  position:relative;
}
#contact .tbl th.hissu:after{
  content:'必須';
  display:block;
  line-height:1.6;
  padding:0 0.5em;
  font-size:14px;
  font-weight:500;
  color:#fff;
  background-color:#cb2318;
  border-radius:2px;
  position:absolute;
  right:1em;
  top:50%;
  transform:translateY(-50%);
}
#contact .tbl th span{
  display:block;
  margin-top:1em;
  font-size:18px;
  font-weight:normal;
}
#contact .tbl td{
  font-feature-settings: normal;
}

#contact .tbl td .t_area{
	position:relative;
}
#contact .tbl td .t_area.on textarea{
	background-color:#fafafa;
}

#contact .tbl td .t_area.on .placeholder{
	display:none;
}
#contact .tbl td .t_area .placeholder{
	width:100%;
	height:100%;
	padding:0.5em 1em;
	color:#a0a0a0;
	position:absolute;
	top:0;
	left:0;
	border:2px solid #d2d2d2;
	background-color:#fafafa;
	border-radius:5px;
}

#contact .tbl .radio .wpcf7-list-item{
  display:inline-block;
  margin:0.5em 2em 0.5em 0;
}
#contact .tbl .radio.vertical .wpcf7-list-item{
  display:block;
  margin:0;
}
/* 送信ボタン下に表示されるメッセージを非表示 */
#contact .wpcf7-response-output{
  display:none;
}

#contact .policy_doc{
  max-width:720px;
  width:92%;
  height:7em;
  margin-top:50px;
  padding:1em;
  text-align:left;
  overflow:auto;
  border:1px solid #d2d2d2;
}
#contact .policy_doc h3{
  font-weight:normal;
}
#contact .policy_doc .lead{
  margin-top:1em;
}
#contact .policy_doc .main > dt{
  margin-top:1.6em;
}
#contact .policy_doc .main > dd p{
  margin-top:1em;
}
#contact .policy_doc .main > dd ul{
  margin-top:1em;
  padding-left:1.5em;
}
#contact .policy_doc .main > dd ul li{
  list-style:disc;
}
#contact .policy_doc .main > dd dl{
  margin-top:1em;
}
#contact .policy_check{
  max-width:720px;
  width:92%;
  margin-top:30px;
  padding:0.4em 0 0.6em;
  background-color:#faf2f3;
}

@media screen and (max-width:1024px){
  #contact{
    padding-bottom:9%;
  }
  #contact h2 .bg_wine{
    font-size:2.8vw;
  }
  #contact .tbl{
    margin-top:5%;
  }
  #contact .tbl th,
  #contact .tbl td{
    border:0.4vw solid #fff;
    font-size:1.9vw;
  }
  #contact .tbl th{
    width:27%;
  }
  #contact .tbl th.hissu:after{
    font-size:1.4vw;
  }
  #contact .tbl th span{
    font-size:1.8vw;
  }
  
  #contact .policy_doc{
    margin-top:9%;
  }
  #contact .policy_check{
    margin-top:5%;
  }
}

@media screen and (max-width:750px){
  #contact h2{
    line-height:1.5;
  }
  #contact h2 .bg_wine{
    width:8em;
    margin-bottom:1em;
    font-size:3.6vw;
  }
  #contact .tbl{
    width:100%;
  }
  #contact .tbl th,
  #contact .tbl td{
    padding:1em;
    border:none;
    display:block;
    font-size:3.2vw;
  }
  #contact .tbl th{
    width:100%;
    padding:0.3em 1em;
    font-size:4vw;
  }
  #contact .tbl th.hissu:after{
    font-size:2.3vw;
  }
  #contact .tbl th span{
    margin-top:0;
    font-size:3.1vw;
  }
  #contact .tbl td .t_area .placeholder{
    font-size:3.2vw;
  }

  #contact .tbl .radio .wpcf7-list-item{
    margin:0.5em 1em 0.5em 0;
  }
  #contact .tbl .radio.vertical .wpcf7-list-item{
    margin:0.5em 0;
  }
}

@media screen and (max-width:540px){
  #contact .tbl td .t_area .placeholder{
    font-size:3.4vw;
  }
}


/* #contact.thanks */
#contact.thanks{
  min-height:calc(100vh - 120px);
  padding-bottom:90px;
}
#contact.thanks .lead{
  margin-top:50px;
  text-align:left;
}

@media screen and (max-width:1300px){
  #contact.thanks{
    min-height:calc(100vh - 90px);
  }
}
@media screen and (max-width:1024px){
  #contact.thanks{
    padding-bottom:9%;
  }
  #contact.thanks .lead{
    margin-top:5%;
  }
}

@media screen and (max-width:750px){
  #contact.thanks{
    min-height:calc(100vh - 60px);
  }
  #contact.thanks .lead span{
		display:block;
		margin-bottom:5%;
	}
}



/* #num */
#num{
  position:fixed;
  right:0.5em;
  bottom:5px;
  z-index:98;
  font-size:16px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  opacity:0;
}
#num .large{
  line-height:1;
  font-size:24px;
}
#num dt{
  margin-right:1.5em;
  padding:0.5em 1.5em 0.5em 1em;
  text-align:left;
  border:2px solid #023e62;
  border-radius:0.5em;
  background-color:#fff;
  position:relative;
}
#num dt:before{
  content:'';
  width:0;
  height:0;
  border-style:solid;
  border-width: 0.5em 0 0.5em 1em;
  border-color: transparent transparent transparent #023e62;
  position:absolute;
  left:100%;
  top:50%;
  transform:translateY(-50%);
}
#num dt:after{
  content:'';
  width:0;
  height:0;
  border-style:solid;
  border-width: 0.5em 0 0.5em 1em;
  border-color: transparent transparent transparent #fff;
  position:absolute;
  left:calc(100% - 4px);
  top:50%;
  transform:translateY(-50%);
}
#num dt.no_arrow{
  margin-right:0;
}
#num dt.no_arrow:before,
#num dt.no_arrow:after{
  content:none;
}
#num dd ul li{
  margin:0.5em 0;
  padding:0.5em 0.5em;
  text-align:left;
  border:1px solid;
  border-radius:0.3em;
  background-color:#fdf3f3;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  position:relative;
}
#num dd ul li img{
  margin-right:0.5em;
}
#num dd ul li .close{
  display:block;
  width:1.4em;
  height:1.4em;
  line-height:1.1;
  font-weight:900;
  border-radius:50%;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  cursor:pointer;
  position:absolute;
  right:0;
  top:0;
  transform:translate(30%,-30%);
}

@media screen and (max-width:750px){
  #num{
    width:98%;
    width:80%;
    height:2.5em;
    position:fixed;
    right:10%;
    bottom:5px;
    z-index:98;
    font-size:3.6vw;
    display: block;
    background-color:rgba(0,0,0,0.8);
    border-radius:0.3em;
    opacity:0;
    overflow:hidden;
  }
  #num .large{
    line-height:1;
    font-size:3.6vw;
  }
  #num dt{
    margin-right:0;
    padding:0;
    border:none;
    border-radius:0;
    background-color:transparent;
    position:static;
    color:#fff;
  }
  #num dt:before,
  #num dt:after{
    content:none;
  }
  #num dt.no_arrow:before,
  #num dt.no_arrow:after{
    content:none;
  }
  #num dt br{
    display:none;
  }
  #num dd ul li{
    margin:0;
    padding:0;
    border:none;
    border-radius:0;
    background-color:transparent;
    display: block;
    position:relative;
    color:#fff;
  }
  #num dd ul li img{
    display:none;
  }
  #num dd ul li br{
    display:none;
  }
  #num .mess{
    width:100%;
    line-height:2.5;
    padding-left:2em;
    font-weight:bold;
    opacity:0;
    position:absolute;
  }
  #num .mess.animation{
    animation: slide 5s linear;
  }
}

@keyframes slide {
  0% {
    transform: translateX(30%);
    opacity:0;
  }
  10% {
    transform: translateX(0);
  }
  15% {
    opacity:1;
  }
  90% {
    transform: translateX(0);
    opacity:1;
  }
  100% {
    transform: translateX(0);
    opacity:0;
  }
}

/* footer */
footer{
  line-height:5;
  font-size:18px;
}

@media screen and (max-width:750px){
  footer{
    font-size:2.4vw;
  }
}


/* top_top */
#topbtn{
  width:50px;
  position:fixed;
  z-index:99;
  right:-100px;
  bottom:110px;
  -webkit-transition: right 0.8s;
  transition: right 0.8s;
}
@media screen and (max-width:1024px){
  #topbtn{
    bottom:80px;
  }
  #topbtn .only_pc{
    display:none !important;
  }
  #topbtn .only_smart{
    display:block !important;
    width:40px;
    line-height:40px;
    font-size:18px;
    color:#fff;
    border-radius:50%;
    background-color:#333;
    box-shadow:0 0 5px rgba(255,255,255,0.3);
  }
}
@media screen and (max-width:768px){
  #topbtn{
    width:40px;
    bottom:25vw;
  }
  #topbtn .only_pc{
    display:block !important;
  }
  #topbtn .only_smart{
    display:none !important;
  }
}



/* 漫画アコーディオン全体のスタイル */
.accordion-title{
  width: 100%;
  background-color: #333333;
  color: #FFF;
  font-size: 2.3rem;
  margin-top: 10px;
  margin-bottom: 10px;
  padding-left: 20%;
}
.kyoyumotibun-manga{
  width: 100%;
}

.accordion_manga1, .accordion_manga2, .accordion_manga3{
  margin-top: 8rem;
  font-size: 3rem;
  line-height: 4rem;
  position: relative;
}

/* アイコンのスタイル */
.accordion-icon {
  transition: transform 0.3s ease;
  margin-left: 20%;
  margin-bottom: 5px;
}

/* 開閉部分のスタイル */
.accordion-content-manga1, .accordion-content-manga2, .accordion-content-manga3 {
  max-height: 0px;
  overflow: hidden;
}
.accordion-content-manga1, .accordion-content-manga2, .accordion-content-manga3 {
  max-height: 700px;
  overflow: hidden;
}
.accordion-content.is-open {
  max-height: none; /* 開いた状態での最大高さ（必要に応じて調整） */
}
#toggle-all-manga1, #toggle-all-manga2, #toggle-all-manga3{
  display: inline-block;
  padding: 0 7rem;
  margin: 4rem auto;
  background: #edf4e7;
  border-radius: 1rem;
  font-size: 2rem;
  line-height: 4rem;
  color: inherit;
  text-decoration: none;
  padding-right: 20px;
}
#toggle-all-manga1, #toggle-all-manga2, #toggle-all-manga3{
  display: inline-block;
  padding: 0 7rem;
  margin: 4rem auto;
  background: #fff;
  border-radius: 2.3rem;
  font-size: 1.7rem;
  line-height: 4rem;
  color: inherit;
  text-decoration: none;
  border: 4px solid #d3cac9;;
  font-weight: bold;
  padding-right: 20px;
}

#toggle-all-manga1 .accordion-icon, #toggle-all-manga2 .accordion-icon, #toggle-all-manga3 .accordion-icon{
  transition: transform 0.3s ease;
  margin-left: 60px;
  width: 30px;
}

@media screen and (max-width:1000px){
  .accordion-title {
    padding-left: 15%;
}
.accordion-icon {
  margin-left: 10%;
}
}
@media screen and (max-width:905px){
  .accordion-title{
    font-size: 2rem;
  }
}

@media screen and (max-width:770px){
  .accordion-title{
    font-size: 1.7rem;
    padding-left: 12%;
  }
  .accordion-icon {
    margin-left: 10%;
    width: 20px;
}
.accordion-content-manga1, .accordion-content-manga2, .accordion-content-manga3 {
  max-height: 450px;
}
}
@media screen and (max-width:700px){
  .accordion-title {
    padding-left: 15%;
}
.accordion-icon {
  margin-left: 10%;
}
}
@media screen and (max-width:620px){
  .accordion-title{
    font-size: 1.5rem;
  }
  .accordion_manga1, .accordion_manga2, .accordion_manga3{
    margin-top: 3rem;
  }
  .accordion_manga1, .accordion_manga2, .accordion_manga3 {
    line-height: 3rem;
  }
  
}
@media screen and (max-width:540px){
  .accordion-title{
    font-size: 1.4rem;
    padding-left: 12%;
  }
  .accordion-icon {
    margin-left: 10%;
}
#toggle-all-manga1, #toggle-all-manga2, #toggle-all-manga3{
  font-size: 1.6rem;
}
.accordion-content-manga1, .accordion-content-manga2, .accordion-content-manga3 {
  max-height: 380px;
}
#toggle-all-manga1, #toggle-all-manga2, #toggle-all-manga3{
  line-height: 3rem;
  margin: 2rem auto;
}
}
@media screen and (max-width:470px){
  .accordion-title{
    font-size: 1.2rem;
    padding-left: 10%;
  }
  .accordion-icon {
    margin-left: 9%;
}
#toggle-all-manga1, #toggle-all-manga2, #toggle-all-manga3{
  font-size: 1.2rem;
  line-height: 3rem;
  margin: 2rem auto;
}
.accordion-content-manga1, .accordion-content-manga2, .accordion-content-manga3 {
  max-height: 300px;
}
}
@media screen and (max-width:400px){
  .accordion-title{
    font-size: 1rem;
    padding-left: 10%;
  }
  .accordion-icon {
    margin-left: 10%;
    width: 15px;
}
#toggle-all-manga1, #toggle-all-manga2, #toggle-all-manga3{
  font-size: 1rem;
  line-height: 2rem;
  padding-right: 30px;
  padding-left: 80px;
}
.accordion_manga1, .accordion_manga2, .accordion_manga3 {
  line-height: 2rem;
}

#toggle-all-manga1 .accordion-icon, #toggle-all-manga2 .accordion-icon, #toggle-all-manga3 .accordion-icon {
  margin-left: 30px;
  width: 20px;
}
}
@media screen and (max-width:380px){
#toggle-all-manga1, #toggle-all-manga2, #toggle-all-manga3{

  padding-left: 70px;
}

}


/* 離脱防止ポップアップ */
#prevent_overlay{
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  z-index: 103;
  background-color: rgba(0, 0, 0, 0.5);
  display:none;
}
#prevent_overlay .flex{
  width:100%;
  height:100%;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}
#prevent_overlay .flex section{
  max-width:550px;
  position:relative;
}
#prevent_overlay .flex section .bg_white{
  padding:20px;
  background-color:#fff;
}
#prevent_overlay .flex section .bg_white .lead{
  font-size:30px;
  font-weight:900;
}
#prevent_overlay .flex section .bg_white .lead .dots{
  background-image: radial-gradient(circle at center, #cb2318 25%, transparent 25%);
  background-position: top right;
  background-repeat: repeat-x;
  background-size: 1em 0.3em;
  padding-top: .3em;
}
#prevent_overlay .flex section .bg_white .lead .marker{
  background: linear-gradient(transparent 65%, #ff0 65%);
}
#prevent_overlay .flex section .bg_white .btn{
  margin-top:1em;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
}
#prevent_overlay .flex section .bg_white .btn li{
  font-size:32px;
  font-weight:800;
  margin:0 0.3em;
}
#prevent_overlay .flex section .bg_white .btn li button{
  width:7em;
  height:3.8em;
  line-height:1.4;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-direction: column;
  flex-direction: column;
  border-radius:0.3em;
  box-shadow:0 -5px 0 inset rgba(0,0,0,0.4);
}
#prevent_overlay .flex section .bg_white .btn li button.bg_gray{
  color:#fff;
  background-color:#c9b8bd;
}
#prevent_overlay .flex section .bg_white .btn li button .yellow{
  color:#ff0;
}
#prevent_overlay .flex section .bg_white .btn li button .small{
  font-size:24px;
}
#prevent_overlay .flex section #close{
  width:1.6em;
  position:absolute;
  right:-3%;
  top:0;
  cursor:pointer;
}

@media screen and (max-width:750px){
  #prevent_overlay .flex section{
    max-width:73%;
  }
  #prevent_overlay .flex section .bg_white{
    padding:5%;
  }
  #prevent_overlay .flex section .bg_white .lead{
    font-size:3.2vw;
  }
  #prevent_overlay .flex section .bg_white .btn li{
    font-size:4.2vw;
  }
  #prevent_overlay .flex section .bg_white .btn li button{
    box-shadow:0 -3px 0 inset rgba(0,0,0,0.4);
  }
  #prevent_overlay .flex section .bg_white .btn li button .small{
    font-size:3.2vw;
  }
}

/* PC */
.hbgmenu {
  background: #fafafa;
  font-size: 0.9rem;
  line-height: 2.8rem;
}
.fix_contain_0 {
  width: 1060px;
  margin: auto;
  position: relative;
}
@media screen and (max-width:1160px) {
  .fix_contain_0 {
    width: 98%;
    margin: auto;
    position: relative;
  }
}
.fix_contain_2 {
  width: 960px;
  /* 90% */
  margin: auto;
  position: relative;
}

@media screen and (max-width:960px) {
  .fix_contain_2 {
    width: 95%;
    margin: auto;
    position: relative;
  }
}

.category_block {
  border: solid #eeeeee 0.5rem;
  padding: 0 2rem 1rem;
}
.category_block .block_title {
  margin: 0 0 1rem;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  line-height: 5rem;
  border-bottom: solid #dfbbbb 1px;
}
.category_block .cat-item {
  display: inline-block;
  padding: 0 3rem;
  margin: 1rem 0.5rem;
  border: solid #dfbbbb 1px;
  border-radius: 0.4rem;
  background: #f7eeee;
  font-size: 1.2rem;
  line-height: 2rem;
  font-weight: 300;
  letter-spacing: -0.1rem;
}
.category_block .cat-item a{
  color: #CB2318;
}
/* Blog - Pagination */
.pagination {
  font-size: 1.5rem;
  line-height: 2.5rem;
  margin: 5rem auto 0;
  font-weight: bold;
  margin-bottom: 3rem;
}

@media screen and (min-width: 769px) and (max-width:1000px) {
  .pagination {
    margin: 3vw auto 0;
  }
}

.pagination span,
.pagination a {
  display: block;
  float: left;
  margin: 0 1rem 0.5rem 0;
  padding: 5px 15px;
  text-decoration: none;
  width: auto;
  border: solid #CB2318 1px;
  color: #CB2318;
  /* Pagination text color */
  background: #fff;
  /* Pagination non-active background color */
  -webkit-transition: background .15s ease-in-out;
  -moz-transition: background .15s ease-in-out;
  -ms-transition: background .15s ease-in-out;
  -o-transition: background .15s ease-in-out;
  transition: background .15s ease-in-out;
}

.pagination a:hover {
  color: #fff;
  background: #CB2318;
  /* Pagination background on hover */
  text-decoration: none;
}

.pagination .current {
  padding: 5px 15px;
  background: #CB2318;
  /* Current page background */
  color: #fff;
}

.pagination .next,
.pagination .prev {
  display: block;
  margin: 0 1rem 0.5rem 0;
}

#toc_container {
	background: #fff; /* 背景色 */
	border: 1px solid #ccc; /* 枠線 */
	box-sizing: border-box; /* スマホの横揺れ防止 */
	display: block !important;
	font-size: 95%; /* フォントサイズ */
	line-height: 1.4; /* 行間 */
	margin: 2em auto; /* 外側の余白 */
	padding: 2em; /* 内側の余白 */
	width: 50% !important; /* 幅 */
  text-align: left;
}
.brdBottom2x {
  border-bottom: solid #CB2318 2px;
}


.pg_title{
  background-color: #CB2318;
  padding: 30px 0;
}
.title_box p{
  color: #fff;
  font-size: 2.5rem;
  font-weight: bold;
}


.Part25 {
        padding: 3rem 0;
    }


  .column-list {
    /* display: flex; */
    flex-wrap: wrap;
    gap: 20px;
}

.Part26 .column-item {
  border: solid #CB2318 1px;
  padding: 1rem;
  margin: 0 0 3rem;
  justify-content: space-between;
  width: 100%;
}
.column-content{
  display: flex;
}

.column-thumbnail {
    margin-right: 15px;
    overflow: hidden;
    width: 40%;
    height: 200px;
    position: relative;
}

.column-thumbnail img {
  width: 100%;
    height: auto;
    object-fit: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.column-text {
    display: flex;
    flex-direction: column;
    width: 60%;
    text-align: left;
}

.column-text h2 {
    font-size: 1.5em;
    margin: 0;
}

.column-text .column-excerpt {
    font-size: 1em;
    color: #555;
    margin-top: 10px;
    line-height: 1.5;
}

.column-category{
  text-align: right;

}
.category-list{
  display: inline-block;
    padding: 0 3rem;
    border: solid #dfbbbb 1px;
    border-radius: 0.4rem;
    background: #f7eeee;
    font-size: 1.2rem;
    line-height: 2rem;
    font-weight: 300;
    letter-spacing: -0.1rem;
    width: fit-content;

}
.column-category a{
  color: #CB2318;
}
.pagination {
    margin-top: 20px;
    text-align: center;
}

/* SP */
@media screen and (max-width: 768px) {
  .hbgmenu {
    background: #fafafa;
    font-size: 0.8rem;
    line-height: 2rem;
    padding: 0 1rem;
  }
  .fix_contain_0 {
    width: 100%;
    /*margin: auto;*/
    margin-top: 0;
    position: relative;
  }
  .fix_contain_2 {
    width: 100%;
    margin: auto;
    position: relative;
    padding: 0 1rem;
  }
  /* Blog - Pagination */
.pagination {
  font-size: 2rem;
  line-height: 3.5rem;
  margin: 5rem auto 0;
}


.pagination span,
.pagination a {
  display: block;
  float: left;
  margin: 0 1rem 0.5rem 0;
  padding: 5px 15px;
  text-decoration: none;
  width: auto;
  border: solid #CB2318 1px;
  color: #CB2318;
  /* Pagination text color */
  background: #fff;
  /* Pagination non-active background color */
  -webkit-transition: background .15s ease-in-out;
  -moz-transition: background .15s ease-in-out;
  -ms-transition: background .15s ease-in-out;
  -o-transition: background .15s ease-in-out;
  transition: background .15s ease-in-out;
}

.pagination a:hover {
  color: #fff;
  background: #CB2318;
  /* Pagination background on hover */
  text-decoration: none;
}

.pagination .current {
  padding: 5px 15px;
  background: #CB2318;
  /* Current page background */
  color: #fff;
}

.pagination .next,
.pagination .prev {
  display: block;
  margin: 0 1rem 0.5rem 0;
}

#toc_container {
	width: 80% !important; /* 幅 */
}

.breadcrumb{
  line-height: 1.3rem;
}

.pg_title {
  padding: 10px 0;
}


.title_box p {
  font-size: 1.2rem;
}

.category_block .block_title {
  font-size: 1.2rem;
  line-height: 1rem;
}
.category_block .cat-item {
  padding: 0 0.3rem;
  margin: 0 3px 0 0;
  border-radius: 0.4rem;
  font-size: 0.9rem;
  line-height: 1.5rem;
}

.category-list {
  padding: 0 0.2rem;
  font-size: 0.9rem;
  line-height: 1.5rem;
}
.Part26 .column-item {
  padding: 0.4rem;
  margin: 0 0.3rem 1rem;
  justify-content: space-between;
}
.column-text .column-excerpt {
  margin-top: 5px;
}
.column-thumbnail {
  margin-right: 10px;
  height: auto;
}


.column-text h2 {
  font-size: 1.1em;
  line-height: 1.4rem;
}



.column-thumbnail {
  width: 30%;
}

.column-text {
  width: 70%;
}
}

/***************************************************
  AddQuicktag
***************************************************/
.tl {
  text-align: left;
}
.flexlyr {
  align-items: flex-start;
  position: relative;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

/* author */
.author {
  width: 100%;
  border: solid #dfbbbb 1px;
  padding: 1rem;
  margin: 5rem 0;
}

.author .sticky {
  display: inline-block;
  background: #CB2318;
  padding: 0 1.2rem;
  font-size: 1.2rem;
  line-height: 2.3rem;
  color: #fff;
  font-weight: bold;
}

.author .author_info {
  width: 100%;
  justify-content: space-between;
  align-items: center;
}

.author .author_info .thumb {
  width: 13%;
}

@media screen and (max-width: 768px) {
  .author .author_info .thumb {
    width: 25%;
  }
}

.author .author_info .thumb img {
  border-radius: 50rem;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.author .author_info .info {
  width: 85%;
}

@media screen and (max-width: 768px) {
  .author .author_info .info {
    width: 70%;
  }
}

.author .author_info .info .name {
  width: 100%;
  border-bottom: solid #CB2318 1px;
  font-size: 1.5rem;
  font-weight: bold;
  vertical-align: bottom;
}

.author .author_info .info .name p {
  display: inline-block;
  padding: 1rem 2rem 0rem 0;
  border-bottom: solid #CB2318 4px;
}

.author .author_info .info .name span {
  font-size: 1rem;
  margin-left: 10px;
}

.author .author_info .info .intro {
  padding: 1rem 0 0;
}

.staff-position {
	font-size: 20px;
}

.staff-qualification {
  font-size: 18px;
  font-weight: bold;
}

.cta .tit{
  font-weight: bold;
}



@media screen and (max-width: 768px) {
  .hamazaki-qualification {
    font-size: 13px;
  }
}

.text-color-red {
  font-weight: bold;
  color: #e24854;
}
.marker-line-yellow {
  font-weight: bold;
  background: linear-gradient(transparent 55%, #ffff6696 0%) !important;
}
.block_title {
	padding: 0 1rem;
	margin-top: 4rem;
	font-size: 2rem;
	line-height: 4rem;
	margin-bottom: 2rem;
}
.bgred {
  background: #CB2318;
}
.twhite {
  color: #fff;
}
.h3_red {
  padding: 8px 0 6px 8px;
  margin: 40px 0 20px;
  border-bottom: 1px #CB2318 solid;
  line-height: 128.6%;
  clear: both;
  font-weight: bold;
	font-size: 1.8rem;
	text-align: left;

}
.h3_red, .h3_red span{
}
@media screen and (max-width: 750px) {
.h3_red {
    font-size: clamp(16px, vw(750px, 20px), 20px);
  }
}

.dot  {
  text-align: left;
  padding-left: 1rem;
  margin: 1rem 0;
}
.num {
  text-align: left;
  padding-left: 1rem;
  margin: 1rem 0;
}
@media screen and (max-width: 768px) {
  .block_title {
    padding: 0.5rem 1rem;
    margin-top: 2rem;
    font-size: 1.3rem;
    line-height: 2rem;
}
.h3_red {
  padding: 4px 0 3px 4px;
  margin: 30px 0 20px;
  border-bottom: 1px #CB2318 solid;
  line-height: 100%;
  clear: both;
  font-weight: bold;
  font-size: 1.2rem;
  text-indent: 0;
  text-align: left;
}

.author .sticky {
  font-size: 1rem;
  line-height: 2rem;
}
}

.dot li:before {
  content: "\25CF ";
}
.num li{
  list-style-type: circled-decimal;
}
.tableClassic {
  border: solid #CB2318 2px;
  margin: 1rem 0;
  width: 100%;
}
.tableClassic th {
  background: #f7eeee;
  border: solid #CB2318 1px;
  padding: 10px;
  color: #CB2318;
}
.tableClassic td {
  border: solid #CB2318 1px;
  padding: 10px
}
.tableClassic.table_w2 th {
  width: 50%; text-wrap: auto;
  vertical-align: middle;
}
.tableClassic.table_w3 th {
  width: 33.33%;
}
.tableClassic.table_w4 th {
  width: 25%;
}


/***************************************************
  AddQuicktag END
***************************************************/

1