@charset "UTF-8";
@font-face {
  font-family: "georgia";
  src: url("../webfonts/georgia/GeorgiaEstate-w15Mn.ttf") format("truetype");
  /* Replace with the path to your regular font file */
  font-weight: light;
}

@font-face {
  font-family: "trebuc";
  src: url("../webfonts/trebuc/trebuc.ttf") format("truetype");
  /* Replace with the path to your regular font file */
  font-weight: light;
}

@font-face {
  font-family: "fontawesome";
  src: url("../webfonts/fontawesome/fa-brands-400.ttf") format("truetype");
  /* Replace with the path to your regular font file */
  font-weight: normal;
}

@font-face {
  font-family: "fontawesome";
  src: url("../webfonts/fontawesome/fa-solid-900.ttf") format("truetype");
  /* Replace with the path to your regular font file */
  font-weight: bold;
}

/* 関数
===================================== */
/* Breakpoint
===================================== */
*,
*::before *::after {
  box-sizing: border-box;
}

html,
body {
  padding: 0;
  margin: 0;
}

img {
  height: auto;
  max-width: 100%;
}

li,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
  font-weight: 400;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  font-weight: 400;
}

a {
  color: inherit;
  font-weight: 400;
}

p {
  font-weight: 400;
}

html {
  height: 100%;
  font-size: 62.5%;
  overflow-x: hidden;
}

@media (max-width: 767px) {
  html {
    font-size: 50%;
  }
}

body {
  color: #000;
  line-height: 1.45;
  font-weight: 400;
  font-size: 1.6rem;
  position: relative;
  font: 15px "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", sans-serif;
  color: #111;
}

a {
  text-decoration: none;
  cursor: pointer;
}

button {
  appearance: none;
  padding: 0;
  background-color: transparent;
  border: none;
  outline: none;
  cursor: pointer;
}

/*==========================================================
# pc
==========================================================*/
header{
  height: 96svh;
  width: 100%;
  background-image: url(/img/uramen-header.png);
  background-size: cover;
  background-position: 50% 30%;
}
header .header-contents{
  width: 100%;
  height: 100%;
  position: relative;
}
header .header-contents .header-contents-3{
  width: 100%;
  height: 14rem;
  display: flex;
  align-items: center;
  padding: 0 0 0 6rem;
  color: #0C0E3D;
  font-size: 2.2rem;
  letter-spacing: 0.1em;
}
header .header-contents .header-contents-3 h1{
  flex-grow: 2;
  margin-right: auto;
  font-weight: bold;
}
.header-contents-3 ul{
  display: flex;
}
.header-contents-3 li{
  font-size: 90%;
  margin-right: 4rem;
  font-weight: bold;
}
.header-contents-3 a{
  height: 14rem;
  background: linear-gradient(135deg, #D8D3B4, #998868);
  border-radius: 0 0 0 0.5vw;
  padding: 2rem;
  color: #fff;
  display: flex;
  align-items: center;
  font-weight: bold;
  font-size: 150%;
}
.header-contents-3 a img{
  height: 7rem;
  margin-left: 1.5rem;
}
.suzi{
  font-size: 180%;
  color: #D1131F;
}
.header-contents .header-copy{
  font-size: 6vw;
  text-align: right;
  position: absolute;
  right: 6%;
  bottom: 20%;
  background: linear-gradient(135deg, #C10068 0%, #BCA900 100%);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  font-weight: bold;
  line-height: 1.2;
}
.btn0{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40%;
  padding: 1rem;
  background: linear-gradient(90deg, #34602D, #CFC699);
  border-radius: 0.5vw;
  font-size: 2vw;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.1em;
}
.btn0 img{
  height: 7rem;
}
.header-contents a.line-btn{
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
  -webkit-transform: translate(-50%, 50%);
  -ms-transform: translate(-50%, 50%);
}
#sec1{
  width: 100%;
  background-image: url(/img/haikei1.png);
  padding: 16rem;
  background-size: 50%;
  background-repeat: repeat;
  background-color:rgba(255,255,255,0.8);
  background-blend-mode:lighten;
}
.content1{
  width: 900px;
  margin: 0 auto;
}
.content1 p{
  text-align: center;
  font-size: 3.2rem;
  font-weight: bold;
  color: #0C0E3D;
  margin-bottom: 2rem;
}
.con1-textbox{
  width: 100%;
  padding: 6rem 12rem;
  box-sizing: border-box;
  background: linear-gradient(90deg, #D98B8B, #8671A6);
  border-radius: 0.5vw;
}
.con1-textbox p{
  text-align: justify;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 1.8;
  font-size: 2.2rem;
  margin-bottom: 0 !important;
}
#sec2{
  width: 100%;
  background-image: url(/img/haikei1.png);
  background-size: 50%;
  background-repeat: repeat;
  background-color:rgba(255,255,255,0.8);
  background-blend-mode:lighten;
  padding-bottom: 28rem;
  position: relative;
}
.content2{
  width: 100%;
  margin: 0 auto;
}
.content2 h2{
  font-size: 3.2rem;
  font-weight: bold;
  color: #0C0E3D;
  margin-bottom: 2rem;
  text-align: center;
}
.con2box{
  display: flex;
  justify-content: center;
  padding: 6rem;
  background-color: #fff;
}
.con2box-list{
  padding: 1.5rem 3rem;
  font-size: 2.2rem;
  letter-spacing: 0.1em;
}
.con2box-list p{
  font-weight: bold;
}
.ap{
  color: #D07B17;
  font-size: 70%;
  font-weight: bold;
}
.setumei li{
  font-size: 70%;
  font-weight: bold;
}
.con2box-list .contactbtn{
  padding: 1.5rem;
  background-color: #3C6533;
  border-radius: 2vw;
  color: #fff;
  font-size: 80%;
}
.list-text{
  margin-bottom:1rem;
}
.setumei{
  margin-bottom:2rem;
}
.adrt-btn{
  position: absolute;
    bottom: 16%;
    left: 50%;
    transform: translate(-50%, 0%);
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    background: linear-gradient(90deg, #8671A6, #D98B8B) !important;
}
#sec3{
  padding: 10rem 12rem 14rem 12rem ;
  background: linear-gradient(270deg, #8671A6, #D98B8B);
}
.content3{
  width: 100%;
  position: relative;
}
.con3nagarebox{
  background-color: #fff;
  padding: 8rem 4rem 10rem 4rem;
  border-radius: 1.5vw;
  width: 80%;
  max-width: 1160px;
  margin:0 auto;
}
.con3nagarebox h2{
  font-size: 3.2rem;
  background: linear-gradient(135deg, #D98B8B 0%, #8671A6 100%);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  margin-bottom: 2.8rem;
  text-align: center;
  font-weight: bold;
}
.osigotonagare-lists{
  display: flex;
  justify-content: center;
}
.osilist{
  padding: 1.5rem 3rem;
  font-size: 2.2rem;
}
.osilist p{
  font-weight: bold;
  font-size: 80%;
}
.big-tex{
  font-size: 120% !important;
  margin-bottom:1.5rem;
}
.content3 .line-btn{
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
  -webkit-transform: translate(-50%, 50%);
  -ms-transform: translate(-50%, 50%);
}
#footer{
  background-color: #222B39;
  padding: 6rem 6rem 1rem 6rem;
}
.footer-contents{
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 2.8rem;
  color: #fff;
  padding-bottom: 6rem;
  letter-spacing: 0.1em;
}
.footer-contactbtn{
  background-color: #fff;
    color: #222B39;
    padding: 1.5rem 4rem;
    border-radius: 0.5vw;
    font-weight: bold;
}
.footer-copy{
  text-align: center;
  color: #fff;
}
.header-suzi{
  font-size: 180%;
}
.header-contents-3 li{
  cursor: pointer;
}
/*==========================================================
# sp
==========================================================*/
@media screen and (max-width:768px) {
  .content1 {
    width: 100%;
    margin: 0 auto;
}
.header-contents-3 ul {
  display: none;
}
header .header-contents .header-contents-3 {
  padding: 0 0 0 2rem;
  font-size: 3rem;
}
.header-contents-3 a {
  border-radius: 1vw 0 0 1vw;
  font-size: 100%;
  height: 10rem;
  width: 30rem;
  margin-left: 1rem;
}
.header-contents-3 a img {
  height: 6rem;
}
.btn0 {
  width: 90%;
  font-size: 6vw;
  border-radius: 1vw;
}
#sec1 {
  padding: 14rem 2rem;
}
.con1-textbox {
  padding: 6rem 4rem;
  border-radius: 1vw;
}
.con2box {
  display: block;
  padding: 2rem 2rem 6rem 2rem;
}
.con2box-list {
  padding: 3rem;
}
#sec3 {
  padding: 10rem 2rem 14rem 2rem;
}
.con3nagarebox {
  width: 100%;
}
.osigotonagare-lists {
  display: block;
}
.osilist {
  padding: 3rem;
}
.footer-contents {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
#footer {
  padding: 6rem 2rem 1rem 2rem;
}
.footer-contactbtn {
  border-radius: 1vw;
  width: 90%;
  text-align: center;
  margin-top: 2rem;
}
header{
  background-position: 32% 50%;
  background-size: auto 110%;
}
.header-contents .header-copy {
  right: 4%;
  top: 17vh;
  font-size: 12vw;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-align: left;
  line-height: 1.2;
  height: 440px;
  letter-spacing: 0.05em;
}
.header-suzi{
  text-combine-upright: all;
  font-size: 180%;
}
}